3

ユーザーのためにリフレッシュ トークンを保存していたら、新しいトークンを取得しようとは思わないでしょう。私は、トークンに 1 時間の妊娠期間しか与えなかった Google に完全に不意を突かれました。つまり、ユーザーがサイトまたはモバイル アプリケーションに 1 時間に 1 回再ログインする必要がある場合を除き、更新トークンはほとんど必要ありません。

そのため、更新トークンを持たないユーザーが多数います。Google は、approval_prompt=forceまたはprompt=none、およびの新しいものを提供していませんaccess_type=offline

以前に 1 つ以上の更新トークンが送信されたにもかかわらず、Google に強制的に更新トークンを送信させる必要があります。そもそもトークンを持たずにリフレッシュトークンを取り消すにはどうすればよいですか?

各ユーザーに手動で取り消すように依頼する必要はありません。これは、特にモバイル開発に照らして、実用的に行う必要があります。

利用可能な場合は、javascript ソリューションに焦点を当てたいと思います。

同じ質問の以前の投稿を見ましたが、まったく別のコンテキストであり、Google OAuth2.0 に関連する回答を受け取ったことはありません:
how to refresh or revoke OAuth2.0 access/refresh_token, when no refresh token available?

4

3 に答える 3

2

彼らが言うには

https://developers.google.com/accounts/docs/OAuth2WebServer#refresh

更新トークン (持っていないトークン) とアクセス トークンのいずれかを含む要求を送信することで、新しいトークンを取り消すことができます。

トークンは、アクセス トークンまたは更新トークンにすることができます。トークンがアクセス トークンで、対応する更新トークンがある場合、参照トークンも取り消されます。

于 2013-09-02T18:04:00.410 に答える
2

を渡す代わりに、渡すapproval_prompt=force必要がありますprompt=consent。これにより、ユーザーは Offline Access に再度同意するようになります。これにより、新しい更新トークンが生成されます。

于 2016-02-28T05:32:34.223 に答える