Installer oauth 2 Google sur un site
raxos
Messages postés
674
Date d'inscription
Statut
Membre
Dernière intervention
-
yg_be Messages postés 23541 Date d'inscription Statut Contributeur Dernière intervention -
yg_be Messages postés 23541 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
Je suis actuellement en train d'essayer de mettre en place un système d'inscription avec Google sur un site, mais je tombe sur un problème plutôt étrange. Je pensais au début à un problème avec le client id ou le secret, mais visiblement ce n'est pas le cas.
Voila le code ou se trouve l'erreur :
<?php require 'vendor/autoload.php'; require 'config.php'; use GuzzleHttp\Client; $client = new Client([ 'timeout' => 3.0, 'verify' => __DIR__ . '/cacert.pem' ]); try { $response = $client->request('GET', 'https://accounts.google.com/.well-known/openid-configuration'); $discoveryJSON = json_decode((string)$response->getBody()); $tokenEndpoint = $discoveryJSON->token_endpoint; $userinfoEndpoint = $discoveryJSON->userinfo_endpoint; $response = $client->request('POST', $tokenEndpoint, [ 'form_params' => [ 'code' => $_GET['code'], 'client_id' => GOOGLE_ID, 'client_secret' => GOOGLE_SECRET, 'redirect_uri' => 'http://localhost/site/connexion.php', 'grant_type' => 'authorization_code' ] ]); $acessToken = json_decode($response->getBody())->access_token; $response = $client->request('GET', $userinfoEndpoint, [ 'headers' => [ 'Authorization' => 'Bearer ' . $accessToken ] ]); $response = json_decode($response->getBody()); if ($response->email_verified === true) { session_start(); $_SESSION['email'] = $response->email; header('Location: connect/index.php'); exit(); } } catch (\GuzzleHttp\Exception\ClientException $exception) { dd($exception->getMessage()); } dd((string)$response->getBody()); ?>
A voir également:
- Erreur 400 : invalid_request vous ne pouvez pas vous connecter à cette appli, car elle ne respecte pas le règlement oauth 2.0 de google concernant la sécurité des applis.
- Votre appareil ne dispose pas des correctifs de qualité et de sécurité importants - Guide
- Se connecter à gmail sur téléphone - Guide
- Google maps satellite - Guide
- Dns google - Guide
- Net framework 2.0 - Télécharger - Divers Utilitaires
1 réponse
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 584
bonjour,
As-tu lu la première ligne du message d'erreur?
Merci de partager le texte des messages d'erreur, pas des images de ce texte.
Bonjour,
Oui tout à fait, mais je ne le comprends pas...
Quelle est la différence entre l'image et le texte ?
La différence principale, c'est que nous pouvons faire un copier/coller du texte, pas de l'image.
Peux-tu recopier ici le texte de la première ligne du message d'erreur? Que ne comprends-tu pas?
Autant pour moi, voila le texte :
Notice: Undefined variable: accessToken in C:\wamp64\www\site\connexion.php on line 28Call Stack#TimeMemoryFunctionLocation10.0106363936{main}( )...\connexion.php:0
Et bien je ne comprends pas le problème...Pourquoi mon AccessToken ne semble pas être valide ?
Le message t'avertit qu'en ligne 28, la variable accessToken est indéfinie, elle ne contient aucune valeur.
Je pense que cet avertissement est utile, il peut expliquer pourquoi la suite ne se déroule pas comme tu l'espères.
Justement, c'est mon problème...Je ne vois pas pourquoi, puisque je lui passe des valeurs...