当使用Node调用PayPal API时,我在设置合作伙伴引用时遇到了问题。
每次尝试调用API时,都会收到以下错误:
错误:"invalid_token“error_description:”在系统中找不到传入的令牌“
根据文档,要调用的URL是https://api-m.sandbox.paypal.com/v2/customer/partner-referrals
查看URL和错误消息,我相信我得到了这个错误,因为我使用的是生产凭据,而不是沙箱。但是,我找不到任何文档显示这方面的生产URL。
我是否正确地相信这是沙箱网址?如果是的话,生产URL是什么?
我跟随了入职检查表,但似乎无法做到这一点。
这是我的代码:
getAuthToken = async () => {
const clientIdAndSecret = "mylongsecret";
const authUrl = "https://api-m.paypal.com/v1/oauth2/token";
const base64 = Buffer.from(clientIdAndSecret).toString('base64')
const response = await fetch(authUrl, {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Accept': 'application/json',
'Accept-Language': 'en_US',
'Authorization': `Basic ${base64}`,
},
body: 'grant_type=client_credentials'
});
const data = await response.json();
return data;
}
setUpMerchant = async () => {
let authData = await this.getAuthToken();
const partnerUrl = "https://api-m.sandbox.paypal.com/v2/customer/partner-referrals";
let data = {
"operations": [
{
"operation": "API_INTEGRATION",
"api_integration_preference": {
"rest_api_integration": {
"integration_method": "PAYPAL",
"integration_type": "THIRD_PARTY",
"third_party_details": {
"features": [
"PAYMENT",
"REFUND"
]
}
}
}
}
],
"products": [
"EXPRESS_CHECKOUT"
],
"legal_consents": [
{
"type": "SHARE_DATA_CONSENT",
"granted": true
}
]
};
const request = await fetch(partnerUrl, {
method: 'POST',
headers: {
'Authorization': 'Bearer '+authData.access_token,
'Content-Type': 'application/json',
'data': data,
},
});
const partnerData = await request.json();
return partnerData;
}GET编辑:我发现问题是我运行的是请求,而不是请求。接受的答案是正确的URL**
发布于 2022-05-17 19:36:53
根据文档,要调用的URL是https://api-m.sandbox.paypal.com/v2/customer/partner-referrals
生产URL在域中没有sandbox.。
https://stackoverflow.com/questions/72279610
复制相似问题