Estoy tratando de depurar una publicación http de la que estoy intentando enviar desde la aplicación de la lista. Pude enviar la publicación correcta de php CURL, que se conecta de forma correcta con mi sitio web de drupal 7 y carga una imagen.Obteniendo el cuerpo de contenido de http post usando php CURL
Con el fin de conseguir que esto funcione en mi solicitud Lisp que realmente necesita ver el cuerpo del contenido de mis post http he podido ver las cabeceras mediante una llamada de la siguiente manera:
curl_setopt($curl, CURLOPT_STDERR, $fp);
curl_setopt($curl, CURLOPT_VERBOSE, 1);
y la los encabezados tienen el mismo aspecto en mi aplicación de lisp, pero no he podido examinar el cuerpo de la publicación. He buscado en línea y otras personas han hecho esta pregunta, pero nadie publicó una respuesta.
El tipo de contenido de mis post http es:
application/x-www-form-urlencoded
También he probado muchos proxy HTTP herramientas debuging pero solamente siempre el HTTP GET para obtener mi página php pero nunca capturar el enviadas desde el servidor una vez el código php se ejecuta.
EDITAR: He agregado un snipet de código que muestra dónde realmente cargo el archivo de imagen.
// file
$file = array(
'filesize' => filesize($filename),
'filename' => basename($filename),
'file' => base64_encode(file_get_contents($filename)),
'uid' => $logged_user->user->uid,
);
$file = http_build_query($file);
// REST Server URL for file upload
$request_url = $services_url . '/file';
// cURL
$curl = curl_init($request_url);
curl_setopt($curl, CURLOPT_HTTPHEADER, array('Content-type: application/x-www-form-urlencoded'));
curl_setopt($curl, CURLOPT_STDERR, $fp);
curl_setopt($curl, CURLOPT_VERBOSE, 1);
curl_setopt($curl, CURLOPT_POST, 1); // Do a regular HTTP POST
curl_setopt($curl, CURLOPT_POSTFIELDS, $file); // Set POST data
curl_setopt($curl, CURLOPT_HEADER, FALSE); // Ask to not return Header
curl_setopt($curl, CURLOPT_COOKIE, "$cookie_session"); // use the previously saved session
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($curl, CURLOPT_FAILONERROR, TRUE);
curl_setopt_array($curl, array(CURLINFO_HEADER_OUT => true));
$response = curl_exec($curl);
No creo que pueda encontrar una respuesta a esto? – user1854496
'curl_setopt ($ ch, CURLOPT_RETURNTRANSFER, true);' – Bobot