令牌必须是一个短期令牌并且在合理的时间范围内

wat*_*aru 48 php google-api google-api-php-client

我有相同的错误.就我而言,当应用尝试通过Google Cloud Client API上传文件时,就会发生这种情况.

POST https://www.googleapis.com/oauth2/v4/token
400 Bad Request
Invalid JWT: Token must be a short-lived token and in a reasonable timeframe
Run Code Online (Sandbox Code Playgroud)

我如何加载令牌是读取服务帐户json文件,并将其附加到CURLOPT_HTTPHEADERPHP中.它确实在过去一个月内正常运行,因此我猜测Google改变了授权方式.

谁有人面对并解决了这个问题?

WNG*_*WNG 101

我几乎在同一时间偶然发现了同样的问题,所以我期待谷歌的一般错误,但这是我的电脑上发生的事情:

raise HttpAccessTokenRefreshError(error_msg, status=resp.status)
oauth2client.client.HttpAccessTokenRefreshError: invalid_grant: Invalid JWT: Token must be a short-lived token and in a reasonable timeframe
Run Code Online (Sandbox Code Playgroud)

在我的情况下,由于执行代码的计算机时钟同步不佳导致了5分钟的延迟(由于内部时钟的电池故障).当我手动将计算机的内部时间更改为正确的时间时,它再次开始工作.

这里提到这个解决方案,但没有提供完整的错误消息

  • 这似乎是解决方案.具体来说,即使我的系统时钟正常,我正在使用的Docker容器也有一个被破坏的时钟. (2认同)

小智 12

我有同样的问题,我发现我的服务器延迟了8分钟.我配置了NTP服务器并神奇地解决了它

  • 刚刚运行`ntpdate ntp.ubuntu.com`为我工作,谢谢! (8认同)

Dav*_*ave 7

对于那些因容器化应用程序出现错误并在此处结束的人,

从容器化应用程序使用我的令牌时,我遇到了同样的问题。重新启动 Docker 桌面 (Windows) 为我做到了。

在第一次遇到这个问题之前,我已经进行了数周的设置。

  • 是啊。我也是。可能是因为我正在休眠我的机器。所以它最终让 docker 感到困惑 (2认同)

小智 5

遇到相同的问题。...手动将计算机的时钟重置为当前时间。...问题已解决。