Google Calendar API认证失败 授权后崩溃无access token如何解决
故障排查及解决方法
- 端口占用冲突
代码中固定使用8080端口作为授权回调端口,如果该端口被本机其他进程占用,谷歌账号授权完成后的回调请求无法正确传回本地程序,就会直接触发崩溃。你可以先停止占用8080端口的进程,或者把代码中creds = flow.run_local_server(port=8080)的端口号修改为其他未被占用的空闲端口,同时要确保谷歌云控制台对应OAuth客户端的授权重定向URI列表中添加了http://localhost:你修改的端口号/。 - OAuth应用配置缺失
如果你在谷歌云控制台创建的OAuth应用还处于测试状态,没有正式发布,那么未被加入测试用户列表的谷歌账号即使完成授权操作,也会被谷歌拦截返回无效响应,导致程序崩溃。你可以打开谷歌云控制台的OAuth同意屏幕配置页,把你用于登录的谷歌账号添加到测试用户列表中即可。 - 依赖包版本不兼容
谷歌API相关的依赖包版本过旧或者存在版本冲突,也会导致授权流程异常崩溃。你可以执行命令升级所有相关依赖到最新版本:pip install --upgrade google-api-python-client google-auth-httplib2 google-auth-oauthlib - 旧授权文件冲突
如果你之前运行过其他谷歌API相关脚本,或者修改过代码中的SCOPES权限范围,本地生成的旧token.json文件会和当前授权需求不匹配,触发验证失败崩溃。直接删除当前目录下的token.json文件重新运行程序即可。 - 路径配置错误
确认你下载的密钥文件已经重命名为credentials.json,且运行Python脚本时的工作目录和脚本、密钥文件所在目录一致,避免程序读取不到密钥文件触发异常。
如果以上方法都无法解决问题,可以在授权逻辑部分添加异常捕获代码,打印具体的报错信息即可精准定位问题根源。
内容的提问来源于stack exchange,提问作者Matt Nguyen
相关产品推荐
相关产品推荐

