【发布时间】:2014-06-29 16:21:39
【问题描述】:
我正在使用 PayPal REST API 进行付款:https://developer.paypal.com/webapps/developer/docs/api/
流程本身非常简单:
- 用户选择支付从而创建支付对象
/v1/payments/payment - 用户被重定向到 PayPal 进行身份验证 (来自 PayPal 响应对象的批准链接)
- 用户验证和 接受
- 用户返回原站点
- 用户完成支付触发
/v1/payments/execute
现在我发现有点棘手的是步骤 1-2 和 4-5。
让我们从第 4 部分开始。从 PayPal 返回时,URL 具有 PayerID 和 token 作为 GET 参数。 PayerID 是进行交易的用户的良好标识符,但不是订单的标识符(如果他们有很多订单)。因此,token 似乎是用于识别订单的合乎逻辑的东西。
不过……
在步骤 1 中创建付款的响应仅包含 token 末尾的 approval_url,它嵌套了几个节点。我已设法将其取出并保存以供将来参考。这样它就可以用来确定在第 5 步中要执行的付款。如果PaymentID 在返回中会容易得多。
我想知道我的方法是否准确或是否有更好的方法。当用户转到 PayPal 以防过期时,我不能完全确定自己是否将信息存储在会话中。
请你的想法。
【问题讨论】: