同様に質問このこれらの答えを除いては、時代遅れと私の現在の状況には適用されません。
これが私のwebappのサインインフローです:
これは正常に機能していましたが(最後にテストしたのは1週間前)、今日は突然次のようになりました。
error: invalid_grant
私はNodeのxoauth2パッケージを使用していますが、これは6月以降更新されていないため、Googleが過去1週間ほどで何かを変更しない限り、なぜこれが突然問題になるのかわかりません。
私が使用しているコードのサンプルは、エラーを呼び出します:
// User credentials - all verified working + correct
xoauth2gen = xoauth2.createXOAuth2Generator({
user: email,
clientId: configAuth.googleAuth.clientID,
clientSecret: configAuth.googleAuth.clientSecret,
refreshToken: refresh
});
// SMTP/IMAP
xoauth2gen.getToken(function(err, token){
if(err){
return console.log("XOAUTH2 Error: " + err);
}
if(type === "full"){
cb(token);
}
});
編集:完全を期すために、更新トークンを生成するときに使用しているスコープは次のとおりです。
app.get('/auth/google',
passport.authenticate('google',
{
scope : ['https://mail.google.com/',
'profile',
'email',
'https://www.googleapis.com/auth/userinfo.profile',
'https://www.google.com/m8/feeds'],
accessType: 'offline',
approvalPrompt: 'force'
}
));
これは、Gmailアカウントでアプリの認証を解除し、MongoDBに保存していた更新トークンを削除し、最初からやり直すことで最終的に修正されました。oAuth2を介して付与されていない、変更したいくつかの権限の単なるケースであるように見えます。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加