Question:
Date: 28-03-2019 17:53:14
(In Spanish)
1. En archivo php alojado en servidor remoto, realizo peticion HTTP Request POST, a traves del uso de funciones CURL, hacia un script (apps script) alojado en google
2. El script en google recibe el json correctamente, se obtienen los datos del json se procesan y nuevamente mediante la clase ContentService, se envia al archivo php que origino la peticion POST
3. El archivo php (que origino la peticion post) recibe los datos de un archivo html que contiene el siguiente texto: "Moved Temporarily" y un link que si lo presionas, te lleva recien a los datos de json devuelto. Esto segun documento API google, lo realiza por seguridad, pero no indica a cabalidad como obtenerlos directamente.
Necesito que el script (apps script google) me devuelva el json con los datos de manera directa al archivo php que los origino para continuar procesandolos, alguien seria tan amable de darme pautas.
De antemano muchas gracias reciban cordiales saludos. Votes: 0 - Answers: 4 - Views: 7 Share on: Google Facebook Twitter LinkedIn Link
Google no devuelve el json directamente, redirecciona en respuesta peticion POST PHP[Unresolved]
Realizo los siguientes pasos:1. En archivo php alojado en servidor remoto, realizo peticion HTTP Request POST, a traves del uso de funciones CURL, hacia un script (apps script) alojado en google
2. El script en google recibe el json correctamente, se obtienen los datos del json se procesan y nuevamente mediante la clase ContentService, se envia al archivo php que origino la peticion POST
3. El archivo php (que origino la peticion post) recibe los datos de un archivo html que contiene el siguiente texto: "Moved Temporarily" y un link que si lo presionas, te lleva recien a los datos de json devuelto. Esto segun documento API google, lo realiza por seguridad, pero no indica a cabalidad como obtenerlos directamente.
Necesito que el script (apps script google) me devuelva el json con los datos de manera directa al archivo php que los origino para continuar procesandolos, alguien seria tan amable de darme pautas.
De antemano muchas gracias reciban cordiales saludos. Votes: 0 - Answers: 4 - Views: 7 Share on: Google Facebook Twitter LinkedIn Link
Answers:
-
Date: 06-04-2019 13:09:26 Quizás tengas que agregar la opción CURLOPT_FOLLOWLOCATION en la configuración de la conexión curl. Con esto se le dice a curl que debe seguir cualquier redirección que aparezca en la respuesta HTTP.
En el peor de los casos, tendrás que parsear la respuesta html en busca del link y luego hacer una petición GET a esa url.
$curl = curl_init(); curl_setopt($curl, CURLOPT_POST, true); curl_setopt($curl, CURLOPT_POSTFIELDS, $data); curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'POST'); curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true); curl_setopt($curl, CURLOPT_URL, $url); $response = curl_exec($curl);
Votes: 0 - Link answer -
Date: 10-04-2019 15:19:34 Te agradezco Cristian, me parece buena idea la de parsear el link, muchas gracias, saludos Votes: 0 - Link answer
-
Date: 10-04-2019 15:51:57 Lástima que no hayas podido resolverlo por el lado de CURL!
Ten en cuenta que parsear el código html te va a servir mientras ese html tenga siempre la misma estructura. Donde te hagan un cambio, muy probablemente tengas que volver a programar ese parseo :( Votes: 0 - Link answer -
Date: 12-04-2019 03:59:55 Cristian te cuento que utilice el parametro FOLLOWLOCATION de funciones CURL, pero no me funciono me arroja un error, por tema seguridad de HTTP request, pero estoy en ello gracias nuevamente, slds. Votes: 0 - Link answer
To actively participate in the community first must authenticate, enter the system.Sign In