reactjs - 如何升级贝宝订阅?(获取状态:422 响应)
问题描述
现在我的 React 应用程序中有 4 种订阅计划。它们是每月 3 美元、5 美元、7 美元和免费计划。我成功实施了订阅和取消订阅计划,但升级订阅不起作用。
以下是我的代码。
const upgrade = () => {
var myHeaders = new Headers();
myHeaders.append("Content-Type", "application/json");
myHeaders.append("Authorization", `Basic ${PAYPAL_BASIC_TOKEN}`);
var requestOptions = {
method: 'POST',
headers: myHeaders,
body: JSON.stringify({ "plan_id": planID }),
redirect: 'follow'
};
fetch(`https://api-m.sandbox.paypal.com/v1/billing/subscriptions/${subscriptionID}/revise`, requestOptions)
.then(response => {
console.log(response);
})
.catch(error => {
console.log('revise error', error)
});
}
这是我从这个电话中得到的回应。
body: (...)
bodyUsed: false
headers: Headers {}
ok: false
redirected: false
status: 422
statusText: ""
type: "cors"
url: "https://api-m.sandbox.paypal.com/v1/billing/subscriptions/I-EIS84S239DWG/revise"
[[Prototype]]: Response
我认为 myHeaders 的令牌存在问题,但我成功取消了具有相同标题的订阅。
我在 paypal 官方文档中找到了 3 个参考链接,但它们彼此不同,所以我不确定哪个适合我的情况。
https://developer.paypal.com/docs/business/subscriptions/add-capabilities/revise-subscriptions/#change-subscription-plan https://developer.paypal.com/docs/platforms/subscriptions/add-capabilities/修订订阅/#change-subscription-plan https://developer.paypal.com/docs/api/subscriptions/v1/#subscriptions_patch
哪个适合我的情况?
PS Bearer token 和 Basic token 有什么区别?在 Paypal 官方文档中,他们在取消订阅时使用了 Bearer 令牌。但我成功使用了基本令牌。任何提示将不胜感激。