Installer oauth 2 Google sur un site
yg_be Messages postés 23437 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());
?>
1 réponse
-
yg_be Messages postés 23437 Date d'inscription Statut Contributeur Dernière intervention Ambassadeur 1 588
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.
-
-
-
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
Notice: Undefined variable: accessToken in C:\wamp64\www\site\connexion.php on line 28 Call Stack # Time Memory Function Location 1 0.0106 363936 {main}( ) ...\connexion.php:0 ^ """ Client error: `GET https://openidconnect.googleapis.com/v1/userinfo` resulted in a `401 Unauthorized` response: { "error": "invalid_request", "error_description": "Invalid Credentials" } """Et bien je ne comprends pas le problème...Pourquoi mon AccessToken ne semble pas être valide ?
-
-
-