【问题标题】:PayPal errors with 'Unspecified Method' on a valid METHOD argument (error code 81002)有效 METHOD 参数上带有“未指定方法”的 PayPal 错误(错误代码 81002)
【发布时间】:2020-11-06 02:56:48
【问题描述】:

我正在尝试集成 PayPal 的上下文快速结帐体验,但我遇到了这个错误。 这是我正在测试的代码:

axios
  .post(
    "https://api-3t.sandbox.paypal.com/nvp",
    {
      USER: process.env.PAYPAL_USER,
      PWD: process.env.PAYPAL_PASSWORD,
      SIGNATURE: process.env.PAYPAL_SIGNATURE,
      METHOD: "SetExpressCheckout",
      VERSION: "124.0",
      PAYMENTREQUEST_0_CURRENCYCODE: "USD",
      PAYMENTREQUEST_0_AMT: "4.5",
      RETURNURL: "http://localhost:3000/pay",
      PAYMENTREQUEST_0_SELLERPAYPALACCOUNTID:
        "sb-47jx7i2598580@business.example.com",
    },
    {
      headers: {
        "Content-Type": "application/url-form-encoded",
      },
    }
  )
    .then((res) => {
      console.log("Got res", res.data);
    })
    .catch((err) => {
      console.error("Caught err", err);
    });

谁能帮我找出问题所在?

【问题讨论】:

    标签: node.js paypal paypal-sandbox


    【解决方案1】:

    我想通了:内容类型全错了,帖子数据需要不同的编码,我使用qs 包实现。

    axios.post(
      "https://api-3t.sandbox.paypal.com/nvp",
      qs.stringify({
        USER: process.env.PAYPAL_USER,
        PWD: process.env.PAYPAL_PASSWORD,
        SIGNATURE: process.env.PAYPAL_SIGNATURE,
        METHOD: "SetExpressCheckout",
        VERSION: "124.0",
        PAYMENTREQUEST_0_CURRENCYCODE: "USD",
        PAYMENTREQUEST_0_AMT: "4.5",
        RETURNURL: "http://localhost:3000/pay",
        PAYMENTREQUEST_0_SELLERPAYPALACCOUNTID:
          "sb-47jx7i2598580@business.example.com",
      }),
      {
        headers: {
          "Content-Type": "application/x-www-form-url-encoded", // right one!
        },
      }
    )
    .then((res) => {
      console.log("Got res", res.data);
    })
    .catch((err) => {
      console.error("Caught err", err);
    });
    

    【讨论】:

      【解决方案2】:

      该 API 至少已经过时了几代,为什么不使用订单 V2 'Set Up Transaction' 和 'Capture Transaction',记录在这里:https://developer.paypal.com/docs/checkout/reference/server-integration/

      【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-04-15
      • 2020-02-20
      • 1970-01-01
      • 2011-02-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多