首页 > 解决方案 > (重新)使用 Google 访问令牌而不是每次都要求一个新令牌的动机是什么?

问题描述

我一直在服务器端的应用内购买验证中使用 Google 刷新/访问令牌。

刷新令牌时,我得到一个新的访问令牌,有效期为 3600 秒。为什么我不能在需要时重新请求一个新的访问令牌,而不是存储和重新使用它?

标签: oauthgoogle-apiin-app-purchasegoogle-oauth

解决方案


为什么我不能在需要时重新请求一个新的访问令牌,而不是存储和重新使用它?

简单的答案是可以。从技术上讲,您每次想要发出请求时都可以请求一个新的访问令牌。只要您存储刷新令牌,您就可以在需要时访问服务器。

我认为一个更好的问题是你为什么不想。好吧,如果您正在使用一个应用程序并且该应用程序运行了 30 分钟,那么当您可以使用第一次返回给您的访问令牌时,确实没有理由请求新的访问令牌。如果您还首先请求访问令牌,则您正在向服务器进行额外的往返请求。

但是,如果您有一个应用程序说每五分钟运行一次作为 cron 作业或 Windows 服务,那么人们可能会争辩说试图跟踪它是一种痛苦。实际上它不是你可以添加一个日期到它的生成时间并在使用它之前检查日期。

现在谷歌不会阻止你每次都请求一个新的,所以请放心。但是我不记得谷歌是否给了你一个新的访问令牌,或者他们只是返回了他们上次生成的那个。如果他们每次都生成一个新的。请记住,他们都会工作一个小时,所以不要让他们闲着。


推荐阅读