我正在使用nodejs和expressjsaypal ec"节点包进行文本贝宝集成。这是通过以下代码段调用的:
<script src='https://www.paypalobjects.com/js/external/dg.js' type='text/javascript'></script>
<script>
var dg = new PAYPAL.apps.DGFlow(
{
trigger: 'paypal_submit',
expType: 'instant'
});
</script>
我用它所取得的成就我可以在Paypal Sandbox环境中进行支付,但它向我显示了旧的支付屏幕,用户需要填写地址等详细信息(由于信用原因,我无法附上屏幕截图(
我想要实现的目标我正在尝试使用屏幕进行支付,用户不需要预先填充任何数据,也可以提供更好的UI。在这个plukr链接中提供了一些类似的经验http://plnkr.co/edit/3vfNSVRyq86pDR5mH4HH?p=previewplunk中给定代码的问题在于,它没有公开action方法中的内容,以及我如何向它提供金额(或任何其他细节,如果有的话(。
任何形式的帮助都将不胜感激。
我得到了它,但还没有声称自己是node
开发人员:(所以这是"概念性的":
在一天结束时,服务器端调用(SetExpressCheckout
(将trnx详细信息(项目、价格、退货/取消URL等(发送到Paypal并获得token
是未更改的(有记录的限制和忽略的参数(。
变化发生在前端,其中:
- 上下文中的js脚本
<script async src="//www.paypalobjects.com/api/checkout.js"></script>
- 新重定向url:
https://www.paypal.com/checkoutnow?token=[the token you obtained]
正在进行
链接样本的服务器端SetExpressCheckout
进程是:
http://166.78.8.98/cgi-bin/aries.cgi?sandbox=1&direct=1&returnurl=http://166.78.8.98/cgi-bin/return.htm&cancelurl=http://166.78.8.98/cgi-bin/cancel.htm
您可以看到returnurl
和cancelurl
集合(但也可以在服务器端完成(。这将获得后续步骤所需的token
。
如果你可以检查流量,你会看到redirect
(在前端"捕获"并显示在"上下文中"(的响应:
HTTP/1.1 302 Found
Date: Sun, 05 Jul 2015 16:00:48 GMT
Server: Apache/2.4.7 (Ubuntu)
Access-Control-Allow-Origin: *
Location: https://www.sandbox.paypal.com/checkoutnow?useraction=commit&token=EC-94X58918K2362702E&ul=0
这个样本可能更详细,"不那么神奇"(显示了更多正在发生的事情(,这就是帮助我实现的:
http://plnkr.co/edit/UhNka4VaaRRGY1TK32LE?p=preview
Hth。