对于我的会员网站,我已经完成了IPN处理程序.我的问题是网站“流量”之一.
这是怎么回事:
用户 – >着陆 – > SignUp – >验证 – > PayPal – >谢谢
所以这就是问题(可能只是在我脑海中).假设您已注册并验证了自己的帐户.然后单击“订阅!”链接并发送到paypal – 您完成付款并被发送到“谢谢”页面.
如果IPN没有快速返回我的网站怎么办?订阅链接仍然存在,用户可能会再次点击它认为他们没有订阅(即使他们有,它只是花时间).
如果我通过更新他们的个人资料来说明……“激活……”,当他们点击“订阅”链接,并且他们没有完成PayPal流程时…它可能会永远说“激活… ”.
只是好奇,因为这是我第一次整合PayPal:
>如何处理用户单击订阅链接与完成IPN过程所需的时间之间的状态?
>你有没有遇到任何IPN未能快速到达的问题?
最佳答案 您的问题表明与远程服务器的连接是异步的(ajax)?
以同步方式编写它可能更容易,因此IPN可以保证返回.如果没有,则意味着:
a)用户在被重定向到远程服务器后关闭了浏览器;
b)远程服务器没有响应.
好的支付网关会将用户重新定向回您的网站,如果他们点击可能是“取消”按钮,但是从不保证返回,所以您需要正确处理它.
我会有一个单独的表来记录给定用户的事务;那是:
一个用户,很多交易
某些支付网关允许您在事务完成时定义为对服务器的回调.也就是说,连接是由网关启动的 – 它不会运行浏览器,因为用户可以关闭选项卡/窗口 – 它会在回调URL中发布帖子,然后更新事务的状态.
我不确定PayPal是否允许这样的事情,但到目前为止,我从未遇到过PayPal的问题,因为我总是以同步方式编写它.
当然,如果需要异步,那么你的ajax函数必须有一个超时/错误处理程序 – 当然我推荐使用jQuery.