invalid_client dans google oauth2


87

J'essaie de créer une page Web pour le téléchargement de vidéos sur youtube, par conséquent, j'essaie d'obtenir l'ID client de la console google api, et dans la console api, cela montre quelque chose comme ceci:

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

Cependant, lorsque j'essaye de tester mon compte en utilisant l'URL suivante:

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 = hors ligne

Il donne le résultat de invalid_client. Même lorsque je l'essaye sur le terrain de jeu oauth2, le même échec se produit

Alors tout le monde sait ce qui se passe?


8
J'ai trouvé que parfois l'ID client oauth2 ne fonctionne pas. Je ne sais pas pourquoi, mais lorsque j'ouvre un nouveau compte et que je crée à nouveau l'identifiant client, cela fonctionne.
Bob

3
Bob a raison, la création de l'ID client résout ce problème
Gabo Esquivel

11
Assurez-vous que lorsque vous copiez / collez l'ID client, vous n'incluez pas d'espace de fin. Cela a fait l'affaire pour moi ...
andig

1
pour moi, j'ai régénéré le secret client et j'utilise qu'il a fonctionné. Il semble que l'API soit toujours instable.
Muhammad Talal

Réponses:


113

Définissez / modifiez le nom de votre produit, j'ai eu ce problème jusqu'à ce que je crée un nom de produit identique au nom du projet.

Le nom du produit peut être défini dans la section de l'écran de consentement de la Google Developers Console pour votre projet. Regardez sous API et authentification dans la navigation de gauche et sélectionnez Écran de consentement. Vous devez également définir votre adresse e-mail dans la case au-dessus du nom du produit.


4
Je vous remercie!! J'obtenais l'erreur "" Erreur: invalid_client. Le client OAuth n'a pas été trouvé. "
J'ai perdu

2
Quel est le nom du produit?
Hubert OG

4
C'est dans l'écran de consentement. Vous devez remplir le champ «NOM DU PRODUIT»
Foo L

2
Cela a fonctionné. Pour être succinct, définissez les champs " NOM DU PRODUIT" ET "ADRESSE EMAIL".
b_archer

2
Merci! J'ai sauvé ma journée! Et je dois dire que de tous les fournisseurs sociaux, Google a les pires documents et la pire interface utilisateur. C'est tellement accablant et déroutant avec leur mauvaise navigation. J'oublie presque toujours comment aller à la page de configuration du projet lol.
tintinboss

69

Après avoir copié les valeurs de l'interface utilisateur Web de Google, j'avais un espace vide pour:

  • client_id
  • secret

Et au DÉBUT et à la FIN pour les deux.


2
Ce problème persiste toujours: P
Abhinay

1
Incroyable, même en cliquant sur le bouton "copier" dans la console API ... On pourrait penser que la zone des développeurs de Google serait sensible aux espaces!
Reisclef

Incroyable aussi ici. Supprimez ces espaces supplémentaires des deux côtés de la chaîne. Ensuite, si après avoir suivi tout ce qui a été dit ici et que rien ne fonctionne toujours, supprimez l'application / le projet et recréez-le à nouveau car il pourrait y avoir des problèmes de mise en cache.
eigenfield

1
Oui, le problème existe toujours !!! Putain de merde. J'ai omis un espace blanc et je ne l'ai pas vu avant de le revérifier. Merci.
LukasS

1
Zut! J'ai vu l'espace à la fin et l'ai enlevé mais je n'ai pas vérifié l'espace au début.
sulabh

41

Découpez les espaces blancs de début et de fin à la fois de client_idet client_secret. Le bouton de copie de Google ne le fait pas pour vous.

entrez la description de l'image ici

Définissez les champs d'adresse e-mail et de nom de produit pour l'écran de consentement OAuth.

entrez la description de l'image ici


3
Vous ne devriez probablement pas laisser votre client secret exposé dans une réponse comme celle-là.
Fernando

1
@Fernando C'est un compte jetable.
Shaun Luttin

Phew. Je
Fernando

3
Comment êtes-vous arrivé à cet écran?
Anthony Kong

2
"Compte à jeter" - pas pour Google, qui vous suit et regroupe tous les comptes que vous avez déjà utilisés avec des "comptes associés". Et une fois que Google interdit l'un des comptes, l'ensemble du paquet est bloqué. Recherchez simplement "Compte de développeur Google terminé" sur Reddit .
Alexander Farber

16

La définition de l'adresse e-mail et du nom du produit dans l'écran de consentement de la console des développeurs Google résout l'erreur "Erreur: client_valide. Le client OAuth est introuvable." pour moi.


9

J'avais .apps.googleusercontent.com deux fois dans mon identifiant.

C'était un problème de copier-coller "Votre ID ICI" .apps.googleusercontent.com


5
Le mien était un espace vide à chaque extrémité: /
Christian

Merci Chris. Ça m'a aidé.
Kiran Pawar

7

dans ce fil, j'ai trouvé ma réponse.

  1. Je suis allé sur google console,
  2. générer un nouveau projet, actualiser, car dans mon cas après la création la page ne s'est pas rechargée
  3. sélectionner un nouveau projet
  4. créer un identifiant client
  5. utilisez-le pour ce dont vous avez besoin

merci les gars: D


6

invalid_client peut aussi simplement signifier que votre ID client et votre secret client sont incorrects lorsque vous créez votre objet Oauth2.


5

Dans mon cas, cela s'est avéré être autre chose, à savoir que mon code utilisait une variable d'environnement qui n'avait pas été définie correctement (et qui n'était stupidement pas vérifiée par mon code). Le configurer, recompiler les ressources et redémarrer l'application ont fait l'affaire.


1
Pareil ici; Je l'avais configuré mais j'ai oublié de redémarrer mon terminal
quicklikerabbit

5

Si vous suivez la documentation, depuis cette page https://developers.google.com/identity/sign-in/web/sign-in#specify_your_apps_client_id

tu verras

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

Mais c'est faux. Ça devrait être

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

Le problème est que le ".apps.googleusercontent.com" est ajouté de toute façon. Si vous le faites comme le dit la documentation, vous obtenez deux fois «.apps.googleusercontent.com»


Merci beaucoup. Le changer comme vous l'avez suggéré a fait l'affaire.
Pavan Dittakavi

4

J'ai résolu ce problème en supprimant les citations inutiles de mes valeurs clientID et clientSecret.


Vous monsieur / madame êtes une légende! J'ai supprimé les guillemets de mes variables d'environnement Heroku.
grabury

2

L'erreur a-t-elle également signalé qu'il manquait un nom d'application? J'ai eu ce problème jusqu'à ce que je crée un nom de projet (par exemple "Projet X") dans la boîte de dialogue des paramètres du projet.


2

les anciennes informations d'identification ne sont probablement pas valides

voir la réponse ci-dessous

réponse stackoverflow

ou les noms courts peuvent fonctionner

voir la réponse ci-dessous réponse stackoverflow

ou le nom du produit est identique au nom du projet comme déjà répondu

parfois, on peut inclure un espace supplémentaire dans le

vérifiez deux fois cette ligne pour être redirigé vers la bonne URL


1

J'ai résolu mon problème avec l'assiette:

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

0

Vérifiez le nom de votre projet sur la console des API Google. vous choisissez un autre projet que vous avez créé. J'étais la même erreur. mon erreur a été de choisir un projet différent.


0

At Credentials Acceptez les demandes de ces référents HTTP (sites Web) (facultatif) Utilisez des astérisques pour les caractères génériques. Si vous laissez ce champ vide, les demandes de tout référent seront acceptées. Assurez-vous d'ajouter des référents avant d'utiliser cette clé en production. Ajouter . (étoile point étoile). Ça marche bien pour moi


0

J'ai accidentellement eu une valeur dans la partie Client Secret de l'URL, mais Google Credential n'a pas besoin d'un Client Secret pour les ID client Android OAuth 2. Le simple fait de laisser la valeur vide dans l'URL a fait l'affaire pour moi.


0

Étapes qui ont fonctionné pour moi:

  1. Supprimer les informations d'identification qui ne fonctionnent pas pour vous
  2. Créez de nouveaux identifiants avec certains NAME
  3. Saisissez le même NAME sur votre écran de consentement OAuth
  4. Remplissez l'adresse e-mail sur l'écran de consentement OAuth

Le nom doit être exactement le même.


0

Une autre chose à vérifier:

Lorsque vous installez les GoogleAPI dans une application .Net avec NuGet, il injectera un nouvel ensemble de valeurs factices dans votre fichier * .config.

Vérifiez que toutes les valeurs d'origine sont toujours en place et supprimez les entrées factices.


0

Aucun des problèmes suivants n'était mon problème - je l'ai résolu en ouvrant une fenêtre de navigation privée. Quelque chose était évidemment mis en cache quelque part, aucune modification des paramètres du client d'authentification n'a aidé et il n'y avait jamais d'espaces de fin ou de début dans les valeurs de configuration.


0

La suppression de l'identifiant client et la création d'un nouveau numéro plusieurs fois ont fonctionné pour moi.


0

Le mien n'a pas fonctionné car je l'ai créé à partir d'un bouton de la documentation. Je suis retourné au projet et j'ai créé un autre OAuthClientID. Ça a marché. Oui, faites attention aux espaces supplémentaires à droite et à gauche également.


0

Pour de meilleurs résultats, assurez-vous d'avoir les détails complets comme suit:

{"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"]}

Ces données sont toujours disponibles au téléchargement au format JSON à partir de https://console.developers.google.com/apis/credentials/oauthclient/


0

Si vous êtes dans Meteor JS, vous devez utiliser clientId à la place appId :

Puisque Facebook utilise appId et google clientId.

ServiceConfiguration.configurations.upsert({
    service: "google"
}, {
    $set: {
        clientId: process.env.OAUTH_GOOGLE_APP_ID,
        loginStyle: "popup",
        secret: process.env.OAUTH_GOOGLE_SECRET
    }
});

J'ai passé quelques heures à m'en rendre compte.


0

J'aurais aimé voir ce post avant, car il y a beaucoup de choses que j'ai dû découvrir par essais et erreurs. Beaucoup de choses peuvent mal tourner. Voici un autre problème que j'ai eu:

Lorsque vous spécifiez les origines Javascript autorisées ou les URI de redirection autorisés, assurez-vous d'inclure votre domaine avec et sans www. Donc https://google.com et https://www.google.com

J'avais également téléchargé un logo d'application. Pour cette raison, l'écran de consentement a nécessité un examen ... ce qui prend une éternité. Ne téléchargez pas de logo d'application ou soyez très patient.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.