本页介绍您可能会遇到的一些与身份验证和授权相关的常见问题。
This app isn't verified
如果 OAuth 权限请求页面显示“此应用未经验证”警告,则表示您的应用正在请求提供对敏感用户数据的访问权限的范围。如果您的 应用使用敏感范围,则必须完成 验证流程 才能移除该警告和其他限制。在开发阶段,您可以通过选择高级 > 前往 {项目名称}(不安全) 来继续操作,而无需理会此警告。
File not found error for credentials.json
运行代码示例时,您可能会收到有关 credentials.json 的“找不到文件”或“没有此类文件”错误消息。
如果您未授权桌面应用凭据,则会发生此错误。如需了解如何为桌面应用创建凭据 ,请参阅 创建凭据。
创建凭据后,请确保下载的 JSON 文件另存为 credentials.json。然后,将该文件移至您的工作目录中。
Token has been expired or revoked
运行代码示例时,您可能会收到“令牌已过期”或“令牌已被撤消”错误消息。
如果 Google 授权服务器中的访问令牌已过期或已被撤消,则会发生此错误。如需了解可能的原因 和解决方法,请参阅 刷新令牌过期。
Python 错误
以下是一些常见的 Python 错误。
AttributeError: 'Module_six_moves_urllib_parse' object has no attribute 'urlparse'
在 Mac OSX 中,如果先加载默认安装的 six 模块(Python 库的依赖项),然后再加载 pip 安装的模块,则可能会发生此错误。如需解决此问题,请将 pip 的安装位置添加到 PYTHONPATH 系统环境变量:
确定 pip 的安装位置:
pip show six | grep "Location:" | cut -d " " -f2
记下此位置,因为下一步中需要用到它。
将以下行添加到
~/.bashrc文件中,并将INSTALL_PATH替换为上一步中确定的位置:export PYTHONPATH=$PYTHONPATH:INSTALL_PATH
重新加载
~/.bashrc文件:source ~/.bashrc
TypeError: sequence item 0: expected str instance, bytes found
此错误是由于 httplib2 中的 bug 造成的。如需解决此问题,请升级到最新版本的 httplib2:
pip install --upgrade httplib2
Cannot uninstall 'six'
运行 pip install 命令时,您可能会收到以下错误:
Cannot uninstall 'six'. It is a distutils installed project and thus we cannot accurately determine which files belong to it which would lead to only a partial uninstall.
当 pip 尝试升级预安装的 six 软件包时,Mac OSX 上会发生此错误。如需解决此问题,请将标志 --ignore-installed six 添加到 pip install 命令。