我正在实施一个简单的“立即购买”按钮,我正在使用IPN(而不是PDT)来验证交易。
让我感到困惑的一点是,我不明白为什么只有在我将notify_url
字段设置为按钮之后我才会将事务变量设置为成功URL,如GET参数。反过来似乎是正常的。
由于用户可以或不可以选择“返回商家网站”,因此我无法依赖该数据。但它似乎与发送到通知URL的那个相同。
一些澄清会有所帮助。谢谢!
答案 0 :(得分:1)
我知道你的意思,在用户完成付款并选择返回卖家网站(paypal页面中的按钮)后,他们会被重定向到你的谢谢页面。
我不认为它曾经在2009年这样做过,但现在paypal将在url查询字符串中发出包含各种参数的重定向。
我只是忽略了这些信息并依赖于可以通过paypal验证的后端IPN帖子
答案 1 :(得分:0)
在我之前使用IPN的经历中,我在控制面板中定义了通知URL的位置。处理完付款后,PayPal会向此URL发送POST通知,而与任何用户行为无关。
在任何情况下,即使您在按钮中定义了notify_url参数,我相信PayPal仍然会从用户行为中单独发送付款通知 - 它们会产生一个新进程来发送数据。至于为什么他们使用GET而不是POST,这是奇怪的行为。但是,在您的IPN脚本中,您仍应具有在继续处理之前使用PayPal验证呼叫的逻辑。