Google Drive API运行10天后出现invalid_grant错误的原因是什么
Google Drive API 10天触发
invalid_grant错误的常见原因 你遇到的10天左右令牌失效问题,几乎都是OAuth2应用配置问题导致,具体原因和修复方案如下:
1. 应用未正式发布,处于测试模式
- Google针对OAuth同意屏幕为「测试」状态的应用,默认限制刷新令牌的最长有效期仅为7天,部分场景下因时区计算、令牌签发批次的规则差异,会出现接近10天失效的表现。令牌过期后调用API就会返回
invalid_grant错误,重新授权生成新令牌后即可临时恢复。 - 修复方案:进入Google Cloud控制台 → 「API和服务」→ 「OAuth同意屏幕」,将应用发布状态切换为「正式发布」,完成后新签发的刷新令牌就会默认长期有效,不会定期自动过期。
2. 刷新令牌触发数量上限
- 单个Google账号对同一OAuth应用最多只能保留50个有效刷新令牌(Google Workspace账号上限为100个),如果你的业务逻辑中每次启动都重新发起授权申请,而不是复用已存储的刷新令牌,旧的刷新令牌会在达到上限后按签发时间顺序自动失效,也可能出现刚好10天左右旧令牌过期的情况。
- 修复方案:在程序中持久化存储首次授权获取的refresh_token,每次接口调用前仅用refresh_token请求新的access_token即可,不要重复走授权流程生成新的刷新令牌。
3. 其他低概率触发场景
- 用户主动修改了Google账号密码,且你的应用申请了 Gmail、Drive等敏感权限,会触发刷新令牌自动回收
- Google Workspace管理员在后台禁用了你的应用的授权权限
- 应用连续6个月没有任何活跃的API调用,刷新令牌会被系统自动清理
你提供的错误截图如下:
内容的提问来源于stack exchange,提问作者George
相关产品推荐
相关产品推荐

