我已经浏览了其他线程,但我还没有找到解决问题的方法。我在paypal沙盒网站上使用“IPN模拟器”,我在我的ipn处理脚本的URL中输入了一封电子邮件,通知我发生的事情。 IPN发送的每个请求都有空的POST数据,知道我在这里做错了什么吗?
我正在使用以下代码来获取POST数据,非常感谢任何帮助!
$req = 'cmd=_notify-validate';
foreach ($_POST as $key => $value) {
$value = urlencode(stripslashes($value));
$req .= "&$key=$value";
}
答案 0 :(得分:1)
您还可以尝试使用测试沙盒卖家和买家帐户对此进行测试。在您的测试沙盒卖家帐户上设置IPN,然后进行测试购买。完成此操作后,您可以登录卖家帐户并转到您的IPN历史记录,并实际查看已发送的IPN字符串。这将帮助您验证是否发送了至少一个IPN POST。它还应该显示它是否成功,或者它是否失败或处于重试状态。如果失败,它将显示服务器回复某些内容时服务器返回的状态代码。你也可以尝试使用在https://www.x.com/developers/PayPal/documentation-tools/code-sample/216623找到的IPN示例脚本我已经测试了PHP,它对我有用。
答案 1 :(得分:0)
您是否已将rm隐藏字段添加到表单中?如果没有rm字段,它可能会返回空数据。