Google Oauth2:是否可以从过期的访问令牌中检索令牌信息?

时间:2015-07-29 20:00:25

标签: google-oauth access-token google-oauth2

我有一个受Oauth2保护的Google App Engine端点项目。我看到一些请求由于无效令牌而失败。

请求网址:https://example.appspot.com/_ah/api/mm/v1/list?filter=q%3Dtest&alt=json 方法:example.resource.list 错误代码:401 原因:必填 消息:令牌无效。

我可以从请求的HEADER中注销令牌。 我得到的令牌是访问令牌,格式如ya29.vwGg -....

当我尝试时 https://www.googleapis.com/oauth2/v1/tokeninfo?access_token= 查找令牌信息,例如issue_to,client_id,extra。

它返回 { 错误:" invalid_token", error_description:"无效值" }

我已经测试过了 https://developers.google.com/oauthplayground 如果令牌已过期,则url会返回相同的错误。

我猜测我的请求失败的原因是使用的令牌已过期。 但不是100%肯定。

有没有办法找到有关过期访问令牌的令牌信息? 或者更广泛的, 有没有办法找到有关无效访问令牌的更多信息,比如为什么它无效或其他什么?

2 个答案:

答案 0 :(得分:0)

我删除谷歌帐户并添加谷歌帐户,然后登录工作。

Google在how to Authenticate with a backend server.

上的Android登录指南

一种简单的方法是检查令牌,XYZ123是您的令牌

https://www.googleapis.com/oauth2/v3/tokeninfo?id_token=XYZ123

答案 1 :(得分:0)

获取令牌信息的方法有很多种。通常令牌因各种原因无效,因此重要原因是无效签名和令牌过期。您可以使用https://jwt.io解码令牌并获取信息。您的错误说明清楚地说明了为什么您的令牌被视为无效的原因。尝试深入研究代码,看看它为什么说无效值。