認証と認可に関する問題のトラブルシューティング

このページでは、認証と認可に関して発生する可能性のある一般的な問題について説明します。

This app isn't verified

OAuth 同意画面に「このアプリは検証されていません」という警告が表示された場合、アプリはユーザーの機密データへのアクセスを可能にするスコープをリクエストしています。アプリで機密性の高いスコープを使用する場合は、検証プロセスを実行して、その警告とその他の制限を削除する必要があります。開発フェーズ中は、[Advanced] > [Go to {Project Name} (unsafe)] を選択して、この警告の後も続行できます。

File not found error for credentials.json

コードサンプルを実行すると、credential.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 OS X で発生します。この場合、pip がインストールされたモジュールよりも前に、six モジュール(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 のバグによるものです。この問題を解決するには、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 OS X で発生します。この問題を回避するには、pip install コマンドにフラグ --ignore-installed six を追加します。