我正在使用angularjs整合网络付款。
我的主要目标是
很高兴地说,经过2天,我完成了前两步。然后我读到了关于使用PDT(支付数据传输)的问题,我用这个来获取付款人的交易细节,但我读过许多帖子说使用PDT不够可靠,我也必须使用IPN(即时付款通知) 。所以我谷歌关于它,几乎所有关于IPN的示例/教程都是使用服务器端脚本编写的。那么是否可以单独使用javascript执行IPN侦听器?
答案 0 :(得分:2)
不,不是在客户端。您可以使用服务器端Javascript(nodejs)来执行此操作。 IPN的目的是让您的服务器知道付款已完成。 IPN请求直接来自paypal幕后到您提供的URL。对于客户来说,没有办法接收这个信号,如果可能,那么就会有一个很大的安全漏洞,因为任何人都可以伪造它。
但是,您可以使用IPN更新后端,然后使用socket.io(websockets)或long-polling(普通旧ajax)之类的东西让您的客户知道付款成功。通过长轮询,您基本上每隔一两秒就会询问您的后端,无论付款是否成功。使用套接字,您可以更直接地进行通信。我喜欢socket.io,因为如果真正的网络套接字不可用,它会回退到长轮询(或闪存)。