排查身份验证和授权问题

本页介绍了您可能会遇到的涉及到的一些常见问题。 身份验证和授权。

This app isn't verified

如果 OAuth 同意屏幕显示“此应用未经验证”警告,您的 应用正在请求提供对敏感用户数据的访问权限的范围。如果您的 应用使用了敏感范围,则必须通过 验证流程 移除警告和其他限制。在开发阶段,您需要 可以选择高级 >前往“{Project Name}” (不安全)

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'

在默认安装 six 的 Mac OSX 中,可能会出现此错误 模块(Python 库的依赖项)在模块(Python 库的依赖项)之前加载, 已安装。如需解决此问题,请将 pip 的安装位置添加到 PYTHONPATH 系统环境变量:

  1. 确定 pip 的安装位置:

    pip show six | grep "Location:" | cut -d " " -f2
    

    记下此位置,因为在下一步中会用到它。

  2. 将以下代码行添加到 ~/.bashrc 文件中,并将以下代码行替换为 INSTALL_PATH(根据根据 上一步:

    export PYTHONPATH=$PYTHONPATH:INSTALL_PATH
    
  3. 重新加载 ~/.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.

在 Mac OSX 上,当 pip 尝试升级预安装的 six 软件包。若要解决此问题,请添加标记 --ignore-installed six 分配给 pip install 命令。