【问题标题】:Ruby - PayPal instant update callback API for updating shipping ratesRuby - 用于更新运费的 PayPal 即时更新回调 API
【发布时间】:2012-09-07 00:58:56
【问题描述】:

当用户在 PayPal 上更改地址时,PayPal 会向您的服务器发出 AJAX 调用以获取新的运费。我们的服务器从 PayPal 获取请求。我有这个工作。 我的困境是“我该怎么做”和“我在哪里”将新的运费发送回 PayPal? API 没有说明如何将其发回。在 POST 中?在 GET 中?在渲染中? 我尝试了渲染:文本并以字符串形式发送 “METHOD=CallbackResponseOFFERINSURANCEOPTION=falseL_SHIPPINGOPTIONNAME0=UPS AirL_SHIPPINGOPTIONLABEL0=UPS 次日空运L_SHIPPINGOPTIONAMOUNT0=20.00&L_TAXAMT0=2.20&L_INSURANCEAMOUNT0=1.51L_SHIPPINGOPTIONISDEFAULT0=true” 我试图渲染一个 xml.builder。 我正在使用没有运费回调方法的 Active Merchant Gem。 当我尝试创建一个类似的方法来发送到沙盒 PayPal URL 时,令牌和 CorrelationID 会发生变化。

【问题讨论】:

    标签: paypal


    【解决方案1】:

    使用回调 API 时,您将充当 Web 服务,因此您只需确保脚本输出 NVP 响应,就像您展示的示例一样。

    您可以调用您的承运商 API 等,为此您将进行 POST 调用,但是一旦您编译了该数据,您只需生成 NVP 字符串并将其回显到屏幕上。

    当您运行该脚本时,您只希望输出 NVP 字符串,就像您在使用 NVP Web 服务并向其发布请求时收到的内容一样。你只是在另一端,所以你正在生成 NVP 响应。

    不过,我会说,根据我的经验,回调系统不是很可靠。您可以将其设置为 6 秒的最长时间,这还不足以从 PayPal 接收数据、点击 3rd 方 API、生成结果并将其发送回 PayPal。它实际上只适用于非常简单的运输服务。否则,它会超时并默认使用您使用 SetExpressCheckout 发送的运输选项。

    希望这有用。

    【讨论】:

      猜你喜欢
      • 2012-07-22
      • 2013-02-27
      • 2012-03-14
      • 1970-01-01
      • 2023-03-23
      • 2016-10-14
      • 2014-10-28
      • 2021-07-19
      • 2014-01-11
      相关资源
      最近更新 更多