Dou*_*eux 5 php post json curl
我收到了一个JSON,可以使用php:// input接收到,我需要将其发布回另一个URL,但是我不确定如何格式化它。这是我收到的方式:
$ updates = file_get_contents(“ php:// input”);
我可以对其进行json_decode解析,然后解析出该数组,以使其适合常规的类似POST的请求,例如hello = world&stack = overflow等。但是是否可以将JSON传递给curl帖子,如下所示:
curl_setopt($curl_handle, CURLOPT_POST, 1);
curl_setopt($curl_handle, CURLOPT_POSTFIELDS, $updates);
Run Code Online (Sandbox Code Playgroud)
然后客户端可以只是php:// input再次获取数据?我问的原因是因为客户说他没有收到数据,可能是因为他没有正确设置数据。我注意到,当您通过命令行执行此类操作时,必须在命令中包含-H,以便将数据解释为普通的POST,也许我需要设置libcurl CURLOPT?
谢谢!
好吧,伙计们,我已经弄清楚了!
要将帖子作为不同的内容类型(即 application/json 或 text/xml)发送,请添加此 setopt 调用
curl_setopt($ch, CURLOPT_HTTPHEADERS,array('内容类型:application/json'));