web-dev-qa-db-ja.com

エラー:invalid_client登録されたオリジンがありません

これらの手順 に従って、Google Drive Realtime APIサンプルファイルをWebサーバーにインストールしました。CloudConsoleでclient_idを生成し、index.htmlファイル。

そのページにアクセスし、ボタンをクリックしてアプリを承認すると、新しいウィンドウがポップアップして表示されます:

エラー:invalid_client
未登録のOrigin

リクエストの詳細は次のとおりです。

openid_connect_request=true
cookie_policy_enforce=false
scope=https://www.googleapis.com/auth/drive.install https://www.googleapis.com/auth/drive.file https://www.googleapis.com/auth/plus.me
response_type=token
access_type=online
redirect_uri=postmessage
proxy=oauth2relay865404532
Origin=http://mywebsite.com
state=264939258|0.165356673
display=page
client_id=1077585001321.apps.googleusercontent.com
authuser=0

Cloud Consoleで使用する他のclient_idが表示されません。誰もこのエラーを克服する方法を知っていますか?ご協力いただきありがとうございます。

46
ashatte

新しいGoogle APIコンソールで、OAuth2.0の承認済みオリジンを次から設定します

Your Project > APIs & auth > Credentials

Webアプリケーション専用の新しいクライアントIDを追加する必要がある場合があります(デフォルトはAppEngineであったため追加しました)

Create Client ID > Web Application > Authorized Javascript origins

ローカルの開発サーバーで実行している場合は、次のような正確なURLを追加するだけです。

http://127.0.0.1:9000
60
Johno Scott

更新:Johno Scottが新しいバージョンのコンソールを参照しているので、代わりにJohno Scottの承認済みの回答を変更しましたが、私のバージョンは古いバージョンにのみ当てはまりました。


解決しました。 OAuth 2.0クライアントID画面にWEB Originを入力する必要がありました。具体的には、index.htmlファイルの正確なパス/ URLである必要がありました、それ以外の場合、デフォルトでは機能しないルートドメインになります。

このスクリーンショットは、入力する必要がある場所を正確に示しています。

enter image description here

15
ashatte