首页 > 开发 > php > 正文

设置了CURLOPT_HTTPHEADER,curl无法传递post参数

2017-09-06 15:07:27  来源:网友分享

设置了下面的代码

curl_setopt($curl_obj, CURLOPT_HTTPHEADER, array("Content-type: application/json" ));

post的参数就传递不过去了,去掉这个代码就可以,这里有什么说法么?

解决方案

不知道你接收这个请求的是什么方法。如果是用全局变量 $_POST 那么肯定是不行的。
因为,你这里的Content-type 是 application/json ,服务端不会把他当做一个表单请求,也就不会去解析他。
$_POST 中的值是通过识别请求的header中的Content-type,是form-data才会去解析body中的数据,然后放到$_POST里。
还有,你为什么要指定这个Content-type?不妨换个方法。