[英]Exchange authorization code for refresh and access tokens - error 400
當我交換訪問令牌和刷新令牌的身份驗證碼時出現 400 錯誤
https://kii*****jie.chromiumapp.org
423*****5p1.apps.googleusercontent.com
ciA*****JGA
我通過
//js
var url = 'https://accounts.google.com/o/oauth2/v2/auth' +
'?client_id=' + clientId +
'&response_type=code' + //id_token
'&access_type=offline' +
'&redirect_uri=' + redirectUri +
'&scope=' + scopes +
'&include_granted_scopes=true'
chrome.identity.launchWebAuthFlow({'url': url, 'interactive':true},
function(url) {
//authcode in url
}
給定authCode = 4/3AGw0c***70ishchar***7G7LdY
然后我嘗試獲取訪問令牌和刷新令牌的交換身份驗證代碼
//let url = "https://oauth2.googleapis.com/token" i've also tried this url
let url = "https://www.googleapis.com/oauth2/v4/token"
const config = {
headers: {
'Content-Type': 'application/x-www-form-urlencoded'
}
}
const requestBody = {
code: authCode,
redirect_uri: 'https://kii*****jie.chromiumapp.org',
client_id: '423*****5p1.apps.googleusercontent.com',
client_secret: 'ciA*****JGA',
grant_type: "authorization_code"
}
const response = await axios.post(url, qs.stringify(requestBody), config)
// qs.stringify(requestBody) = `code=4%2FAGw0c***70ishchar***7G7LdY&
// redirect_uri=https%3A%2F%2Fkii*****jie.chromiumapp.org&
// client_id=423*****opf0pvrr5p1.apps.googleusercontent.com&
// client_secret=ciA*****JGA&
// grant_type=authorization_code`
但我收到Error: Request failed with status code 400
400 狀態意味着您的 HTTP 請求可能有問題。
它應該是沒有apps.googleusercontent.com
部分的您的ID嗎?
const requestBody = {
code: authCode,
redirect_uri: 'https://kii*****jie.chromiumapp.org',
client_id: '423*****5p1', # CHANGED
client_secret: 'ciA*****JGA',
grant_type: "authorization_code"
}
好的修復它。
客戶端 ID 不能有“.apps.googleusercontent.com”
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.