curl php file_get_contents 400 bad request

开始用PHP的file_get_contents请求,返回400 Bad Request,但是用浏览器或PostMan访问正常。

然后尝试用PHP的curl函数,一样的错误。

修改php.ini的user-agent或者给curl添加user-agent的header,一样的错误。

服务器直接执行curl命令,一样的错误。

经过一番研究,终于找到原因。

解决方案:url中的空格及加号需要替换为%20,执行成功。

str_replace(array(‘ ‘, ‘+’), ‘%20’, $param)



发表评论

邮箱地址不会被公开。