如何使用 express 和 axios 从 Linkedin API 获取访问令牌?
How to get the access token from Linkedin API with express and axios?
我正在研究 Linkedin API 以使用 'sign-in with Linkedin' 功能。
我正在使用 axios 获取 accessToken 但出现此错误:
错误:'invalid_redirect_uri'、
data: {
error: 'invalid_redirect_uri',
error_description: 'Unable to retrieve access token: appid/redirect uri/code verifier does not match authorization code. Or authorization code expired. Or external member binding exists'
}
问题是,在 Postman 上,redirect_uri 完全相同,它工作正常,我得到了访问令牌,在 express 上,我收到了上述错误。
async function getAccessToken(authCode) {
try {
const response = await axios.post('https://www.linkedin.com/oauth/v2/accessToken', null, {
params: {
grant_type: 'authorization_code',
code: authCode,
redirect_uri: 'https%3A%2F%2Fswift-front.netlify.app',
client_id:'86v3d75uyj2qp4',
client_secret: itsASecret
},
})
console.log(response);
} catch (error) {
console.log(error)
}
}
getAccessToken(authCode);
我想我的错误在于我传递参数的方式。无法弄清楚到底是什么错误。
redirect_uri 仅当您请求授权码时才需要编码,但是当您请求访问令牌时,您使用的重定向 URL 无需编码。
我正在研究 Linkedin API 以使用 'sign-in with Linkedin' 功能。 我正在使用 axios 获取 accessToken 但出现此错误: 错误:'invalid_redirect_uri'、
data: {
error: 'invalid_redirect_uri',
error_description: 'Unable to retrieve access token: appid/redirect uri/code verifier does not match authorization code. Or authorization code expired. Or external member binding exists'
}
问题是,在 Postman 上,redirect_uri 完全相同,它工作正常,我得到了访问令牌,在 express 上,我收到了上述错误。
async function getAccessToken(authCode) {
try {
const response = await axios.post('https://www.linkedin.com/oauth/v2/accessToken', null, {
params: {
grant_type: 'authorization_code',
code: authCode,
redirect_uri: 'https%3A%2F%2Fswift-front.netlify.app',
client_id:'86v3d75uyj2qp4',
client_secret: itsASecret
},
})
console.log(response);
} catch (error) {
console.log(error)
}
}
getAccessToken(authCode);
我想我的错误在于我传递参数的方式。无法弄清楚到底是什么错误。
redirect_uri 仅当您请求授权码时才需要编码,但是当您请求访问令牌时,您使用的重定向 URL 无需编码。