PayPal IPN模拟器测试产生空卷曲结果。在现场工作正常

时间:2013-03-11 00:15:57

标签: php curl paypal paypal-ipn string

我觉得这里有点偏离我的深度。自从几天前PayPal大修以来,我一直遇到沙盒IPN模拟器的问题。

基本上curl结果通常表示VERIFIED或INVALID,现在似乎返回一个空字符串。

这个完全相同的代码在实时模式下工作,但现在在沙盒中不适用于我:

$post_fields ='cmd=_notify-validate';

foreach($_POST as $key => $val)
{
  $post_fields .= "&$key=".urlencode($val);
}

$ch =  curl_init();
// $url is https://www.sandbox.paypal.com/cgi-bin/webscr
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_fields);
curl_setopt($ch, CURLOPT_VERBOSE, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);

$ch_result = curl_exec($ch);
curl_close($ch);

我已经好好了解并尝试了各种建议,例如使用HTTP版本1.1并添加curl_setopt($ch, CURLOPT_HTTPHEADER, array('Connection: Close'));,似乎没有任何效果。

我得到所有其他帖子字段确定它只是$ ch_result。很难过,有其他人有这个问题,他们能够解决它吗?

1 个答案:

答案 0 :(得分:0)

我有相同的问题使用单独但相关的技术(html / os vs php)和同上,获取空白var而不是“已验证或无效”,但相同的代码在实时模式下工作正常,因为我仍然得到订单。 ..

我昨晚(星期六)读过这个帖子 - > IPN simulator returning 401 error ...似乎建议paypal开发人员知道问题...他们知道的延伸,谁知道我36小时前发送了两封电子邮件但仍然是nada然后再次,周末所以也许星期一的事情会清理......

还要注意......当我强行/伪造一个ipn调用来绕过这个bug时,我确实看到他们似乎已经将var payment_status更改为2与之前的“已完成”的数字...

oye vey ...这就是所谓的技术升级的痛苦......从技术上来说,我认为他们应该将软件重命名为具体软件,因为一旦事情稳定,除非安全,否则将它单独留下......所有这些都是胡说八道“改进” - 呃 - 看到Windows Vista,Windows 8.0,但我离题了......亲切地说,查克斯科特