如何修复 Google 令牌在 7 天后过期
Posted
技术标签:
【中文标题】如何修复 Google 令牌在 7 天后过期【英文标题】:How to fix Google tokens Expiring after seven days 【发布时间】:2021-11-26 05:53:47 【问题描述】:是否有办法获得 Google Sheet API 的永久 oauth2 令牌或半永久令牌?
我现在使用的是每 7 天过期一次,这不是很有帮助。
如果没有,是否可以使用 python 连接在线电子表格应用程序?
【问题讨论】:
【参考方案1】:这取决于您正在做什么,如果您访问的是您个人拥有的工作表,那么您可以使用service account。服务帐号已经过预授权,不会过期。
如果您是用户拥有的访问表,那么您将需要使用 Oauth2。如果您请求离线访问,那么您将获得所谓的刷新令牌。当访问令牌过期时,刷新令牌可用于请求新的访问令牌。
正如您所说,令牌在 7 天后过期,这意味着您当前正在使用刷新令牌。但是,您还没有将谷歌云平台中的项目设置为生产。由于它仍在测试中,因此您的 refreshtoken 将在 7 天后expire。
为外部用户类型配置了 OAuth 同意屏幕且发布状态为“正在测试”的 Google Cloud Platform 项目发出了一个在 7 天后到期的刷新令牌。
如何切换到生产环境。
为您的项目转到Google cloud console
在左侧找到 Oauth 同意屏幕。
点击进入生产
【讨论】:
感谢您提供这个有用的答案。您能否提供将项目从“测试”阶段变为生产阶段所采取的步骤?我上周提交了,我的项目显示“待处理”,但我的刷新令牌在 7 天后仍然过期。 检查我的更新。您的项目可能表示待验证。没有等待生产。 感谢您的回复,我发布了验证和发布状态的屏幕截图。我的令牌在 7 天后仍然过期...这里有什么建议吗? 您需要开始验证过程。以上是关于如何修复 Google 令牌在 7 天后过期的主要内容,如果未能解决你的问题,请参考以下文章
Google Cloud Messaging 将在 7 天后过期
如何使用 Angular Http Interceptor 和 RxJS 刷新 JWT 令牌?