【发布时间】:2014-05-22 12:01:06
【问题描述】:
我的服务器上的 IPN 接收器成功接收 IPN 并将其重新发布回 PayPal 的服务器 (https://www.paypal.com/cgi-bin/webscr) 以进行验证。我正在使用 IPN 模拟器对其进行测试,它总是收到INVALID。所以我已经完成了大部分工作并让服务器说话。只需要一点精细的抛光,我无法调试它,因为我没有反馈。我在哪里可以获得这些反馈?
PayPal 的文档声明如下:
"在 paypal.com 上检查您的 IPN 历史记录。 您的 IPN 历史记录告诉您 PayPal 是否发送了给定的 IPN 消息以及您的听众是否响应了它。此页面还可能提供有关运行侦听器的服务器状态的信息。如有必要,您可以通过 IPN 历史页面请求 PayPal 重新发送给定的 IPN 消息。” -- https://developer.paypal.com/webapps/developer/docs/classic/ipn/integration-guide/IPNTesting/
所以我需要找到这个 IPN 历史记录,对吗?但是这些 IPN 日志记录在什么帐户上呢?它们肯定包括使用模拟器生成的 IPN 吗?如果不是,那有什么意义?任何开发人员如何调试?我查看了真实商家账户、沙盒商家账户、沙盒付款人账户。但他们都说没有发送任何 IPN 的历史记录。
顺便说一句:PayPal 的沙盒是一场噩梦,因为如果您退出一个沙盒帐户,您会发现自己回到了实时站点的登录页面。同样,您无法使用沙盒商家帐户登录 IPN 模拟器,只能使用实时商家帐户登录,因此您永远必须以实时商家身份登录才能发送请求,注销,以沙盒身份登录,检查 IPN 历史记录,什么也没找到,登录退出,现场登录并重复,直到你疯了。然后为了进一步混淆事情,模拟器从地址buyer@paypalsandbox.com发送IPN,所以请记住PAYPAL!!!! IPN 模拟器是沙箱的一部分吗?一旦您提交了一个模拟 IPN,如果您确实需要输入有效沙盒付款人帐户的地址,它会将所有表单值重置为默认值(文档没有说明您是否这样做,但我在这里抓住了稻草)您还必须根据请求多次复制并粘贴到框中。请使用 PayPal,以一种非同事可以理解的方式编写文档。说明在测试 IPN 的每个阶段您需要处于什么环境。
我感到非常沮丧,因为这不是开发的方式。我是凭直觉盲目地尝试事情,非常不科学,非常低效。
谁能澄清(或指出我澄清的文档部分)究竟如何调试INVALID 响应?
【问题讨论】:
-
@PayPal_Martin 你能帮忙吗?
标签: paypal paypal-ipn paypal-sandbox