Javascript 从PayPal API获取访问令牌时出错
//上面定义了秘密(javascript) 它给了我错误“请求失败,状态代码401”Javascript 从PayPal API获取访问令牌时出错,javascript,paypal,Javascript,Paypal,//上面定义了秘密(javascript) 它给了我错误“请求失败,状态代码401” 我认为问题在于grant\u type=client\u credentials语法。这是向Axios传递参数以进行post请求的正确语法吗。${basicAuth}必须是base64编码的,请尝试${btoa(basicAuth)} curl的-u标志根据API的正确参数为您执行此操作。最好使用{grant\u type:'client\u credentials'},Axios将其转换为URL编码字符串。但
我认为问题在于
grant\u type=client\u credentials
语法。这是向Axios传递参数以进行post请求的正确语法吗。${basicAuth}
必须是base64编码的,请尝试${btoa(basicAuth)}
curl的-u标志根据API的正确参数为您执行此操作。最好使用
{grant\u type:'client\u credentials'}
,Axios将其转换为URL编码字符串。但是您所写的应该可以工作。401错误意味着您没有提供正确的凭据。你确定你使用了沙盒密钥而不是生产密钥吗?@Barmar它对我有用。谢谢。但现在它给出了不支持的\u MEDIA\u TYPE错误……使用axios的auth
选项也是如此:-)
PAYPAL_OAUTH_API = "https://api.sandbox.paypal.com/v1/oauth2/token/";
// 1c. Get an access token from the PayPal API
basicAuth = `${PAYPAL_CLIENT}:${PAYPAL_SECRET}`;
const token = await axios.post(
PAYPAL_OAUTH_API,
`grant_type=client_credentials`,
{
headers: {
Accept: `application/json`,
Authorization: `Basic ${basicAuth}`,
},
}
);
return token;