使用 php CURL 从 http post 获取内容正文
我正在尝试调试我正在尝试从列表应用程序发送的http帖子。我已经能够从php CURL发送正确的帖子,它与我的drupal 7网站直接连接并上传图像。
为了让它在我的lisp应用程序中工作,我真的需要看到我的http帖子的内容正文,我已经能够使用这样的调用来查看标头:
curl_setopt($curl, CURLOPT_STDERR, $fp);
curl_setopt($curl, CURLOPT_VERBOSE, 1);
并且标题在我的lisp应用程序中看起来相同,但我无法检查帖子的主体。我在网上搜索过,其他人也问过这个问题,但没有人发布回复。
我的 http 帖子的内容类型是:
application/x-www-form-urlencoded
我也尝试过许多http代理调试工具,但它们只使用http GET来获取我的php页面,但一旦执行php代码,就永远不会捕获从服务器发送的get。
编辑:我添加了一个代码截图,显示我实际上传图像文件的位置。
// 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);