我正在尝试进行一个 curl 调用,同时传递一个图像文件。
显然它对我不起作用。但是,我有一个测试工作,它只使用直接的 html 表单。
如何调试/打印从 curl 传递的原始数据?
尝试将调用与表单版本进行比较,看看有什么不同。
我试过这些:
curl_setopt($curl, CURLOPT_HEADER, 1);
curl_setopt($curl, CURLOPT_VERBOSE, true);
print_r(curl_getinfo($curl));
Run Code Online (Sandbox Code Playgroud)
但这些似乎只是返回响应而不是原始请求。(它是通过第 3 方的,所以我无法访问终点)
谢谢你,
Tee
curl命令行客户端有一个--trace-ascii选项。但该功能并未在 PHP 界面中公开。
然而,输出_VERBOSE可能仍然包含一些信息(如果确实是服务器错误)。但在此之前,您必须将其重定向到单独的文件中:
$fp = fopen("curl.log", "w");
curl_setopt($ch, CURLOPT_STDERR, $fp);
Run Code Online (Sandbox Code Playgroud)
如果做不到这一点,恐怕最好的选择是查看网络流量(使用单独的工具,也许是临时代理)。