Paypal IPN 通过 GET 而不是 POST 发送数据,即使 rm 值为 2

Posted

技术标签:

【中文标题】Paypal IPN 通过 GET 而不是 POST 发送数据,即使 rm 值为 2【英文标题】:Paypal IPN sending data through GET instead of POST even though rm value is 2 【发布时间】:2013-03-06 05:08:41 【问题描述】:

我已经完全按照应该编码的方式对 paypal IPN 进行了编码,包括确认页面。一切都在沙箱中完美运行,但在真实环境中,即使在保持 rm 值 =2 之后,paypal 仍然通过 GET 而不是 post 发送数据。所以我阅读了一些文章并更改了自动返回。它仍然通过GET返回,然后我再次将自动返回更改为关闭,它仍然通过GET返回......

我需要通过 POST 获得的信息,包括我传递的变量...有人请在这里帮助我...

【问题讨论】:

【参考方案1】:

确保您的帐户中没有启用 PDT 的自动退货功能。这将导致帖子成为 GET。如果您在代码中传递返回 URL 并将变量“rm”设置为“2”,它应该作为帖子返回。如果这仍然不起作用,您能否提供您正在使用的按钮代码,以便我查看代码和帐户。

我刚刚用我的帐户对此进行了测试,它工作正常。

【讨论】:

谢谢你的帖子,对不起我第一次测试,我没有真正关闭PDT,所以通过GET获取信息。我现在已经整理好了……Paypal 真的需要处理它的文档……【参考方案2】:

您是否在 GoDaddy 上使用共享主机托管?您的主机可能不允许来自 3rd 方服务器的 POST 请求?

【讨论】:

它实际上在蓝色主机上,但是为什么它通过GET发送?我现在该怎么办? 还有一个附加域,所以我链接到主域,因为附加域不安全,所以我提供了一个完整的链接,如secure.bluehost.com/~username/a/pay/ipn.php 但这与沙盒完美配合(使用相同的地址)。它通过邮件发送并且运行良好,一旦我将沙盒 id 更改为真实 id 问题就开始了......

以上是关于Paypal IPN 通过 GET 而不是 POST 发送数据,即使 rm 值为 2的主要内容,如果未能解决你的问题,请参考以下文章

Paypal 中的 IPN 与 PDT

带有 IPN 的 PayPal 用户输入表单

Paypal IPN - 检测是不是由于资金不足而导致付款不成功

Paypal IPN 返回空字符串而不是“VERIFIED”或“INVALID”

PayPal 付款状态“待处理” - 清算时没有 IPN

paypal IPN 获取买家交易ID