如何使用java客户端lib检查Google+ API令牌服务器端的到期状态

时间:2013-11-10 16:02:00

标签: google-app-engine google-plus google-oauth google-api-java-client

我正在 Google AppEngine 上开发应用,并将Google+ SignIn与服务器端流量方法一起使用,如文档here所示。 我可以获得上述令牌,并将其存储在session中 但是,我想在登录时检查,如果令牌有效或已过期。我怎么能这样做? 注意:我使用Google API客户端库。

2 个答案:

答案 0 :(得分:3)

您可以调用tokeninfo API方法来获取有关令牌的信息,包括它到期前的时间(如果< 0,令牌已过期)

https://developers.google.com/resources/api-libraries/documentation/oauth2/v2/java/latest/com/google/api/services/oauth2/model/Tokeninfo.html

答案 1 :(得分:0)

除了杰森的回答:

您还可以通过使用获取令牌时的时间戳设置另一个会话cookie来估计令牌是否仍然良好。它们大约每小时到期(有一些变化)。

由于tokeninfo端点需要请求,您还可以跳过命中tokeninfo端点,除非您有其他原因,例如需要验证令牌是否与应用和用户匹配,并且只是做出正常请求,直到它们变坏为止请求错误。当您尝试刷新令牌时。