Php 捕获来自API的状态为302的POST响应

Php 捕获来自API的状态为302的POST响应,php,http-post,http-status-code-302,Php,Http Post,Http Status Code 302,我正在尝试捕获通过外部API发送给我的POST响应 问题是POST数组完全为空,而我可以在firebug中检查浏览器是否接收到它,但找到了代码302,第二个与代码307相同的主体临时重定向: 有没有办法在我的脚本中获取这些数据,或者服务器重定向有问题?如果您使用的是CURL库,有两个选项可以帮助您解决这个问题: curl_setopt($curl,CURLOPT_HEADER,1); 这将返回包含状态代码的响应标头。您可以看到是否返回302 或者,您可以简单地遵循重定向 curl_setopt

我正在尝试捕获通过外部API发送给我的POST响应

问题是POST数组完全为空,而我可以在firebug中检查浏览器是否接收到它,但找到了代码302,第二个与代码307相同的主体临时重定向:


有没有办法在我的脚本中获取这些数据,或者服务器重定向有问题?

如果您使用的是CURL库,有两个选项可以帮助您解决这个问题:

curl_setopt($curl,CURLOPT_HEADER,1);
这将返回包含状态代码的响应标头。您可以看到是否返回302

或者,您可以简单地遵循重定向

curl_setopt($curl,CURLOPT_FOLLOWLOCATION,1);
编辑:抱歉,刚才看到你在客户端这么做


如果这是一个AJAX调用,您可以在原始XHR对象中获得状态代码。

CURL仅用于从我的角度生成付款链接。当外部支付网站dotpay处理并接受此支付时,此网站将重定向并将此数据发送回。这不是一个AJAX调用。不能做更多。你能直接发布到重定向链接吗?有时302只是一个http->https重写。如果你是认真的,我从这个url获取数据