PHP CURL POST请求返回 400 Bad Request的处理

某套代码,都是linux,只是换了一台,换了php环境。
运行CURL POST请求返回 400 Bad Request。
经过验证排查,原因虽然使用POST,但我们的参数是在URL后边拼接的。

解决方法有两个

方法1、

curl_setopt($ch, CURLOPT_POST, 1);

增加一个

curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query(['aa'=>1]));


方法2、

curl_setopt($ch, CURLOPT_POST, 1);
替换成
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'POST');

相关推荐

PHP CURL POST请求返回 400 Bad Request的处理

某套代码,都是linux,只是换了一台,换了php环境。 运行CURL POST请求返回 400 Bad Request。 经过验证排查,原因虽然使用POST,但我们的参数是在URL后边拼接的。 解决...

猜你喜欢

linux centos 解决卸载分区出现umount: target is busy.

linux centos 解决卸载分区出现umount: target is busy.

服务器一个分区的文件数过多,磁盘满,用rm时间太久,由于文件属于Cache可删除,决定直接格式化这个分区。 根据步骤,要选umount卸载分区,再mkfs.ext4格式化,再重新mount挂载。 【...

解决autodl的GPU服务器Ubuntu vim中文乱码

解决autodl的GPU服务器Ubuntu vim中文乱码

为了微调chatbml3 6b,租了台3090的服务器,而且直接使用的社区镜像。 本次出现汉字乱码的系统版本如下 cat /proc/version Linux version 5.15.0-57-...