站点图标 西部盒子博客

关于wp_remote_post提交Post请求时服务器返回405错误的坑

wp_remote_post 是wordpress的内置函数,作用是向远程服务器提交post请求;

 

我们今天要说的坑主要表现在,我们使用其向阿里云的一台 服务器提交请求时返回了405错误。

这个是在开启了阿里云的应用防火墙后出现的情况;

最初认为是我们提交的数据包含了非法内容导致了拦截错误;

我们的调试方法是利用PostMan工具完整的模拟了post数据请求,这个时候是正常的;

证明我们的数据没有问题;

 

那么问题出在哪呢;

我们查看了完整的WP_Http类代码,发现我们在使用wp_remote_post提交请求时附加了大量的header 信息,且是无法删除的,为了验证我们的判断;

我们使用了最基础的Curl函数来提交,更是验证了我们的判断;

 

最后我们的解决方法是使用wordpress 的WP_Http_Curl类进行请求,问题得到解决!

 

今天思路有点乱,胡乱坚持写一遍吧!为了度娘我也是拼了。

 

退出移动版