このページでは、認証と認可に関連して発生する可能性のある一般的な問題について説明します。
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'
このエラーは、six
モジュール(Python ライブラリの依存関係)のデフォルト インストールが、pip がインストールしたモジュールの前に読み込まれる Mac OSX で発生することがあります。この問題を解決するには、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
のバグが原因で発生します。この問題を解決するには、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 で発生します。この問題を回避するには、pip install
コマンドに --ignore-installed six
フラグを追加します。