web-dev-qa-db-ja.com

Google oauth2のinvalid_client

私はyoutubeビデオアップロード用のWebページを作成しようとしています。そのため、Google APIコンソールからクライアントIDを取得しようとします。APIコンソールでは次のように表示されます。

Client ID: 533832195920.apps.googleusercontent.com
Redirect URIs: http://bobyouku.ap01.aws.af.cm/testyoutube.php
https://developers.google.com/oauthplayground

ただし、次のURLを使用してアカウントをテストしようとすると:

https://accounts.google.com/o/oauth2/auth?client_id=533832195920.apps.googleusercontent.com&redirect_uri=http%3A%2F%2Fbobyouku.ap01.aws.af.cm%2Ftestyoutube.php&scope= https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fyoutube&response_type = code&access_type = offline

Invalid_clientの結果を提供します。 oauth2プレイグラウンドで試しても、同じ失敗が発生します

だから誰もが何が起こっているのか知っていますか?

79
Bob

製品名を設定/変更します。プロジェクト名と同じ製品名を作成するまでこの問題がありました。

製品名は、プロジェクトのGoogle Developers Consoleの[同意画面]セクションで設定できます。左側のナビゲーションで[APIと認証]を確認し、[同意画面]を選択します。また、製品名の上のボックスにメールアドレスを設定する必要があります。

107
jojay

Google Web UIから値をコピーした後、次のスペースが空いていました。

  • client_id
  • secret

先頭および末尾の両方で。

62

client_idclient_secretの両方から先頭と末尾の空白を削除します。 Googleのコピーボタンはこれを行いません。

enter image description here

OAuth同意画面のメールアドレスと製品名の両方のフィールドを設定します。

enter image description here

37
Shaun Luttin

Google開発者コンソールの同意画面でEMAIL ADDRESSとPRODUCT NAMEを設定すると、エラー「エラー:invalid_client。OAuthクライアントが見つかりませんでした」が解決されます。私のために。

16
S.Roshanth

IDに.apps.googleusercontent.comを2回使用しました。

「Your ID HERE」.apps.googleusercontent.comのコピーアンドペーストの問題でした

9
Chris Carr

このスレッドで答えを見つけました。

  1. Googleコンソールに行って、
  2. 私の場合、ページを作成した後にリロードされなかったため、新しいプロジェクトを生成し、更新しました
  3. 新しいプロジェクトを選択
  4. クライアントIDを作成する
  5. 必要なものに使用します

みんなありがとう:D

7
Pedro Romão

invalid_clientは、Oauth2オブジェクトを作成するときにクライアントIDとクライアントシークレットが間違っていることも意味します。

6
jdcaron

私の場合、これは他の何かであることが判明しました。つまり、コードは適切に設定されていない環境変数を使用しました(そして、コードによって愚かにチェックされませんでした)。設定、アセットの再コンパイル、アプリの再起動がうまくいきました。

5
Josh Diehl

ClientIDとclientSecretの値から不要な引用符を削除することでこれを解決しました。

4
OsoGrizz

おそらく古い資格情報は無効です

以下の回答をご覧ください

stackoverflow answer

または短縮名が機能する場合があります

以下の回答を参照してください stackoverflow answer

または既に答えられているプロジェクト名と同じ製品名

時には余分なスペースを

この行を2回チェックして、正しいURLにリダイレクトされるようにします

2
Charles Dominic

エラーは、アプリケーション名が欠落していることも報告しましたか?プロジェクト設定ダイアログでプロジェクト名(例:「プロジェクトX」)を作成するまでこの問題がありました。

ドキュメントに従う場合は、このページから https://developers.google.com/identity/sign-in/web/sign-in#specify_your_apps_client_id

わかるでしょ

<meta name="google-signin-client_id" content="YOUR_CLIENT_ID.apps.googleusercontent.com">

しかし、それは間違っています。そのはず

<meta name="google-signin-client_id" content="YOUR_CLIENT_ID">

問題は、「。apps.googleusercontent.com」がとにかく追加されることです。ドキュメントに書かれているように行うと、「。apps.googleusercontent.com」が2回取得されます

1
aaronvargas

トリムで私の問題を解決しました:

'google' => [
    'client_id' =>trim('client_id),
    'client_secret' => trim('client_secret'),
    'redirect' => 'http://localhost:8000/login/google/callback',
],
1
parastoo amini

私のために働いたステップ:

  1. 役に立たない資格情報を削除する
  2. NAMEで新しい資格情報を作成します
  3. OAuth同意画面で同じ名前を入力してください
  4. OAuth同意画面で電子メールアドレスを入力します

名前はまったく同じである必要があります。

0
syntagma

次のどれも私の問題ではありませんでした-シークレットウィンドウを開くことでこれを解決しました。何かが明らかにどこかにキャッシュされていて、認証クライアントの設定を変更することはまったく役に立たず、設定値に末尾または先頭のスペースはありませんでした。

0
cloakedninjas

最良の結果を得るには、次の完全な詳細を確認してください。

{"client_id":"282324738-4labcgdsd4nlh34885s2d34tmi.apps.googleusercontent.com","project_id":"abcd23ss-212808","auth_uri":"https://accounts.google.com/o/oauth2/auth","token_uri":"https://www.googleapis.com/oauth2/v3/token","auth_provider_x509_cert_url":"https://www.googleapis.com/oauth2/v1/certs","client_secret":"23452-dfgdfgcdfgfd","redirect_uris":["http://localhost:6900/auth/google/callback"],"javascript_origins":["http://localhost:6900"]}

このデータは https://console.developers.google.com/apis/credentials/oauthclient/ からJSONとして常にダウンロードできます。

0
Abhay Shiro

資格情報で、これらのHTTPリファラー(Webサイト)からの要求を受け入れます(オプション)ワイルドカードにアスタリスクを使用します。これを空白のままにすると、リファラーからのリクエストが受け入れられます。本番環境でこのキーを使用する前に、リファラーを必ず追加してください。 (スタードットスター)を追加します。それは私のためにうまくいきます

0
HuyLe

クライアントIDを削除し、新しいIDを2、3回作成するとうまくいきました。

0
Haris ur Rehman

URLのクライアントシークレット部分に誤って値を設定しましたが、Google資格情報にはAndroid OAuth 2クライアントIDのクライアントシークレットが必要ありませんURLの値を空白のままにするだけで、私にとってはうまくいきました。

0
Jason Washo

私は、ドキュメントのボタンから作成したため、機能しませんでした。私は再びプロジェクトに行き、別のOAuthClientIDを作成しました。出来た。はい、左右の余分なスペースにも注意してください。

0
Hemant Sharma

確認するもう1つのこと:

NuGetを使用してGoogleAPIを.Netアプリにインストールすると、*。configファイルに新しいダミー値のセットが挿入されます。

元の値が残っていることを確認し、ダミーエントリを削除します。

0
Iain Ballard

Google APIコンソールでプロジェクト名を確認してください。作成した別のプロジェクトを選択します。私は同じエラーでした。私の間違いは、異なるプロジェクトを選択することでした。

0
Dio Blando