0

我在我的 Grails 2.1.1 版本中使用 paypal。在paypal中成功处理付款后,显示一个配置自动返回的成功页面以及一个手动返回按钮到相同的url。如果用户没有点击返回按钮,那么一切都很好。但是,如果用户单击“返回”按钮,那么我的操作会出现两次相同的请求(自动返回也会发送相同的请求)。是否可以过滤此重复请求以对控制器的操作不执行任何操作,因为它已经在进行手动退货点击请求,或者如果用户点击手动退货按钮,则将 paypal 设置为不发送该付款的自动退货请求。?或者有什么更好的方法来处理这个问题。?

4

1 回答 1

0

您可以启用支付数据传输以获取交易 ID。

来自文档:https ://cms.paypal.com/uk/cgi-bin/?cmd=_render-content&content_ID=developer/howto_html_paymentdatatransfer

当客户向您付款时,PayPal 通过将交易 ID 附加到您在帐户资料中指定的 URL 来向您发送付款的交易 ID。此信息通过 HTTP GET 作为此名称/值对发送:tx=transactionID

然后您可以检查 transactionID 是否已被处理。

此外,您可以通过将这些参数发送回贝宝来完成付款验证,如上面链接中所述。

于 2013-01-10T01:49:19.807 回答