Autor
|
Tema: llamada curl no funciona (Leído 3,265 veces)
|
OssoH
Desconectado
Mensajes: 911
|
Hola, estoy tratando de crear un fichero php alojado en un dominio con https para que haga una llamada a otro servidor http a traves del puerto 1234. Lo he intentado con $ajax jsonp y con curl y en todos los casos me dice que el contenido es bloqueado. Las pruebas con POSTMAN y poniendo la url directamente en el navegador funcionando. Pero hay algo más en el PHP que no funciona. ¿Que puedo estar haciendo mal? Os pongo el ejemplo de curl ini_set('display_errors', 1); ini_set('display_startup_errors', 1); error_reporting(E_ALL); header("Access-Control-Allow-Origin: *"); header("Access-Control-Allow-Headers: *");
echo 'kaka aa'; $ch = curl_init("http://aquipongolaweballamar.net:1234"); // initialize curl handle curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); curl_setopt($ch, CURLOPT_PORT, 1234);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); // Return the result to a variable curl_setopt($ch,CURLOPT_RETURNTRANSFER,true); curl_setopt($ch, CURLOPT_NOSIGNAL, 3); // Fail on errors? curl_setopt($ch, CURLOPT_FAILONERROR, 3); curl_setopt($ch,CURLOPT_CONNECTTIMEOUT, 3); // Timeout after X seconds curl_setopt($ch,CURLOPT_TIMEOUT,10);
$data = curl_exec($ch);
$http_status_code = @curl_getinfo($ch, CURLINFO_HTTP_CODE);
print($data); echo 'status;'.$http_status_code;
|
|
|
En línea
|
|
|
|
#!drvy
|
El servidor donde alojas ese fichero, ¿permite conexiones externas hacia ese puerto?
Saludos
|
|
|
En línea
|
|
|
|
OssoH
Desconectado
Mensajes: 911
|
Te refieres a si tengo abierto el puerto 1234 en el router? Si no lo permitiese entonces con el POSTMAN no funcionaria y tampoco funcionaria si pongo la url directamente en el navegador ¿no?
si uso JSONP me pasa lo mismo <script>
$.ajax({
type: 'GET', url: 'http://aqupongolaweb.net:1234', data: { algunaVariable: 'algunDato' }, dataType: "jsonp", crossDomain: true, cache:false, success: function(data){ // Lo que tenga que hacer cuando se reciben los datos alert('ok'); }, error:function(error){ // Lo que tenga que hacer cuando no se reciben los datos alert('nook'); }
});
</script>
Mod: No hacer doble post. Usar el botón "Modificar".
|
|
« Última modificación: 9 Diciembre 2020, 17:00 pm por #!drvy »
|
En línea
|
|
|
|
#!drvy
|
Insertar Cita Te refieres a si tengo abierto el puerto 1234 en el router?
Si no lo permitiese entonces con el POSTMAN no funcionaria y tampoco funcionaria si pongo la url directamente en el navegador ¿no? No. Me refiero a si el servidor donde alojas el archivo PHP con el que intentas hacer el CURL, permite conexiones hacia fuera y más específicamente, conexiones a otros puertos. Es muy común que ciertos hostings capen conexiones hacia puertos raros. si uso JSONP me pasa lo mismo Para ajax debes permitir CORS. https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS¿De todos modos, que es lo que exactamente te devuelve CURL? Saludos
|
|
|
En línea
|
|
|
|
OssoH
Desconectado
Mensajes: 911
|
Me refiero a si el servidor donde alojas el archivo PHP con el que intentas hacer el CURL, permite conexiones hacia fuera y más específicamente, conexiones a otros puertos. Es muy común que ciertos hostings capen conexiones hacia puertos raros.
Llevas razón no se permite conexiones hacia fuera. Gracias
|
|
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
CURL
PHP
|
OssoH
|
2
|
3,854
|
12 Enero 2011, 09:11 am
por OssoH
|
|
|
curl && c++
Programación C/C++
|
darkvidhack
|
2
|
3,594
|
14 Agosto 2011, 18:43 pm
por darkvidhack
|
|
|
Llamada por Curl a la CMT
Desarrollo Web
|
PC-Drivers
|
5
|
3,336
|
13 Febrero 2012, 17:50 pm
por PC-Drivers
|
|
|
Hacer cURL en respuesta de cURL para posterior scraping.
PHP
|
goditozor
|
3
|
4,723
|
1 Septiembre 2014, 20:32 pm
por WHK
|
|
|
C++ curl
Programación C/C++
|
XKC
|
0
|
1,307
|
21 Agosto 2018, 19:32 pm
por XKC
|
|