【问题标题】:Parse response to SetExpressCheckout for digital goods with AJAX (integrating PayPal Digital Goods for Express Checkout)?使用 AJAX 解析对 SetExpressCheckout 数字商品的响应(集成 PayPal 数字商品以进行快速结账)?
【发布时间】:2011-07-10 17:54:41
【问题描述】:

PayPal 的文档有点不清楚。

我们应该如何解析针对数字商品的 SetExpressCheckout 响应,其中涉及覆盖在您网站上的 iFrame?数字商品体验允许用户留在您的网站上,本质上是通过在叠加层中显示 PayPal 支付页面——如果我正确理解文档的话。

但是,我们对您应该如何与 PayPal 服务器进行通信感到困惑,因为 PayPal 似乎没有提供 JSON 响应。我们是否应该在 IPN 的后端监视器上发布表格?或者这一切都可以通过 AJAX/JSON 从前端完成吗?

这里是数字商品和快速结账的 PayPal 页面:https://cms.paypal.com/us/cgi-bin/?cmd=_render-content&content_ID=developer/e_howto_api_IntroducingExpressCheckoutDG

我们正在使用 Rails。

【问题讨论】:

标签: ruby-on-rails ajax paypal


【解决方案1】:

要记住的重要一点是,您不应该使用 AJAX 运行 API 调用 - API 调用应该始终在您的后端完成。这样,您就不会冒险将您的 API 凭证暴露给所有人和他们的狗。 API 调用本身只是一个简单的发布和响应——您将调用发布到 PayPal 的 API 服务器,然后 PayPal 会实时响应。

我建议查看我的演示以了解整个过程应该如何工作:https://www.x.com/blogs/matt/2011/02/15/another-digital-goods-demo

【讨论】:

    【解决方案2】:

    GitHub 上有an example 使用 PayPal 的名称-值对 API 的请求/响应。这应该会让你在路上走得更远一些。本质上,您为 SetExpressCheckout 操作发送带有 NVP 的哈希并取回。稍加解析(在 & 和 = 上拆分),您可以执行检查 if (response["ACK"]=="Success") 之类的操作。

    PayPal NVP API guide 描述了请求和响应中的名称-值对。第 21 页描述了成功和不成功的响应是什么样的。

    【讨论】:

    • 谢谢@anh 这正是我想要的。
    猜你喜欢
    • 2014-05-21
    • 2011-07-24
    • 2014-09-21
    • 1970-01-01
    • 2013-03-29
    • 2013-12-05
    • 1970-01-01
    • 2017-08-18
    • 2020-06-21
    相关资源
    最近更新 更多