Gli errori possono verificarsi in livelli diversi. Potresti ricevere notifiche in modi diversi a seconda di dove si verifica l'errore.
Parametri OAuth obbligatori
Se dimentichi di impostare i parametri OAuth obbligatori, come client_id o scope, vedrai un messaggio di errore nella console JavaScript del browser.

Correggere gli errori di configurazione OAuth
Per risolvere alcuni errori, potrebbero essere necessarie modifiche nella console API di Google.
- Crea un ID client, se non è ancora stato creato.
- Per l'esperienza utente dei popup, aggiungi tutti i domini che potrebbero attivare il flusso corrente a
Authorized JavaScript origins
. - Per l'esperienza utente di reindirizzamento, aggiungi tutti gli URL che potrebbero ricevere risposte di autorizzazione a
Authorized redirect URIs
. - Configura correttamente la schermata per il consenso OAuth.
- Richiedi la verifica della tua app, se necessario.
- Potresti dover eseguire passaggi aggiuntivi per rispettare le norme OAuth 2.0 di Google.
Valori dei parametri OAuth non validi
Se imposti i valori non validi sui parametri OAuth, ad esempio l'ID client, gli identificatori di ambito o i valori del tipo di risposta non validi, visualizzerai la pagina di errore OAuth.

Risposte di errore OAuth
OAuth potrebbe restituire una risposta di errore, nel qual caso la funzione callback
verrà attivata con la risposta di errore come parametro. Di seguito è riportato un
esempio di risposta di errore OAuth.
{ "error":"access_denied" }
Ecco alcuni esempi:
- L'utente nega la richiesta OAuth.
- Per una richiesta OAuth con il parametro
prompt=none
, l'utente non è già autenticato e non ha preconfigurato il consenso per gli ambiti richiesti.
Questo esempio mostra come gestire le risposte OAuth positive e di errore:
function myCallback(response) {
if (response.error) {
// Handle error response
... ...
} else if (response.code) {
// Handle success code response
... ...
}
}
Errori non OAuth
OAuth non definisce i comportamenti quando:
- la finestra popup non si apre.
- la finestra popup viene chiusa prima che venga restituita una risposta OAuth.
Questa libreria acquisisce questi errori e attiva error_callback
se
impostato. Assicurati di controllare il tipo di errore. In caso contrario, la logica del codice potrebbe
essere interessata quando questa libreria supporterà nuovi tipi di errore in un secondo momento.
function myErrorCallback(err) {
if (err.type == 'popup_failed_to_open') {
// The popup window is failed to open
... ...
} else if (err.type == 'popup_closed') {
// The popup window is closed before an OAuth response is returned
... ...
}
}
const client = google.accounts.oauth2.initCodeClient({
client_id: 'YOUR_GOOGLE_CLIENT_ID',
scope: 'https://www.googleapis.com/auth/calendar.readonly',
ux_mode: 'popup',
callback: myCallback,
error_callback: myErrorCallback
});