Ho un'applicazione basata sul Web che utilizza Google OAuth2.0 come framework di accesso. Funziona bene fino a ieri. L'applcation non è riuscita a ottenere il token di aggiornamento dopo che il token di accesso è scaduto. Oltre a ciò, la pagina "Richiesta di autorizzazione" era cambiata in "Accesso offline" invece di "Sapere chi sei su Google" e "Visualizza email"Il token di accesso OAuth 2.0 è scaduto e un token di aggiornamento non è disponibile
In origine, la pagina "Richiesta di autorizzazione" richiede il accesso a "Sapere chi sei su Google" e "Visualizza email". Dopo il logout dell'utente e il secondo accesso, la pagina "Richiesta di autorizzazione" sarà la stessa.
Tuttavia, fino a ieri, la pagina "Richiesta di autorizzazione" è stata modificata in "Accesso non in linea". Dopo che il token di accesso è scaduto, ho ricevuto il messaggio di errore di seguito:
PHP Errore irreversibile: eccezione non rilevata 'Google_AuthException' con messaggio 'Il token di accesso OAuth 2.0 è scaduto e un token di aggiornamento non è disponibile. I token di aggiornamento non vengono restituiti per le risposte che sono state approvate automaticamente. ' in /home2/xxxx/public_html/test/google-api-php-client/src/auth/Google_OAuth2.php:221
Ho provato $client->setAccessType('online');
. Tuttavia, ho ancora questo errore fatale con me. Qui di seguito è il mio codice per ottenere il token di accesso:
if ($client->getAccessToken()) {
$token = $client->getAccessToken();
$authObj = json_decode($token);
$refreshToken = $authObj->refresh_token;
$user = $oauth2->userinfo->get();
$me = $plus->people->get('me');
$email = filter_var($user['email'], FILTER_SANITIZE_EMAIL); // get the USER EMAIL ADDRESS using OAuth2
$optParams = array('maxResults' => 100);
$activities = $plus->activities->listActivities('me', 'public', $optParams);
$_SESSION['access_token'] = $client->getAccessToken();
} else {
$authUrl = $client->createAuthUrl();
}
Ho provato a cercare problema simile, come me, ma non riuscivo a trovarne uno. Questo è successo da ieri. Prima di questo, non ho mai apportato alcuna modifica ai codici.
Per quanto ne so, hanno cambiato un po 'la loro gestione della sicurezza. Se ora concedi l'accesso a un'app, Google sa per il futuro, quali autorizzazioni hai richiesto e le salva e ti verrà chiesto di nuovo, se desideri disporre di nuove autorizzazioni o accesso offline. Penso che si sia trattato di un bug temporaneo mentre stavano aggiornando il loro sistema, perché non ho riscontrato alcun problema al momento. Aggiornamento –
: hai ragione, non posso più usare i token di aggiornamento ... –
Puoi dirmi come sbarazzarsi di questo? – Akilsree1