Risolvere i problemi di autenticazione e autorizzazione

Questa pagina descrive alcuni problemi comuni che potresti riscontrare relativi all'autenticazione e all'autorizzazione.

This app isn't verified

Se nella schermata di consenso OAuth viene visualizzato l'avviso "Questa app non è verificata", significa che la tua app richiede ambiti che forniscono l'accesso a dati utente sensibili. Se la tua applicazione utilizza ambiti sensibili, deve essere sottoposta alla procedura di verifica per rimuovere l'avviso e altre limitazioni. Durante la fase di sviluppo, puoi ignorare questo avviso selezionando Avanzate > Vai a {Nome progetto} (non sicuro).

File not found error for credentials.json

Quando esegui l'esempio di codice, potresti ricevere un messaggio di errore "file non trovato" o "nessun file di questo tipo" relativo a credentials.json.

Questo errore si verifica quando non hai autorizzato le credenziali dell'applicazione desktop. Per scoprire come creare credenziali per un'applicazione desktop, vai a Creare credenziali.

Dopo aver creato le credenziali, assicurati che il file JSON scaricato sia salvato come credentials.json. Quindi, sposta il file nella directory di lavoro.

Token has been expired or revoked

Quando esegui il codice di esempio, potresti ricevere il messaggio di errore "Il token è scaduto" o "Il token è stato revocato".

Questo errore si verifica quando un token di accesso del server di autorizzazione di Google è scaduto o è stato revocato. Per informazioni sulle potenziali cause e soluzioni, consulta la pagina Aggiornare la scadenza del token.

Errori Python

Di seguito sono riportati alcuni errori comuni di Python.

AttributeError: 'Module_six_moves_urllib_parse' object has no attribute 'urlparse'

Questo errore può verificarsi in Mac OSX quando l'installazione predefinita del modulo six (una dipendenza della libreria Python) viene caricata prima di quella installata da pip. Per risolvere il problema, aggiungi la posizione di installazione di pip alla variabile di ambiente PYTHONPATH di sistema:

  1. Determina la posizione di installazione di pip:

    pip show six | grep "Location:" | cut -d " " -f2
    

    Prendi nota di questa posizione, perché ti servirà per il passaggio successivo.

  2. Aggiungi la seguente riga al file ~/.bashrc, sostituendo INSTALL_PATH con la posizione determinata nel passaggio precedente:

    export PYTHONPATH=$PYTHONPATH:INSTALL_PATH
    
  3. Ricarica il file ~/.bashrc:

    source ~/.bashrc
    

TypeError: sequence item 0: expected str instance, bytes found

Questo errore è dovuto a un bug in httplib2. Per risolvere il problema, esegui l'upgrade alla versione più recente di httplib2:

pip install --upgrade httplib2

Cannot uninstall 'six'

Quando esegui il comando pip install, potresti ricevere il seguente errore:

Cannot uninstall 'six'. It is a distutils installed project and thus we
cannot accurately determine which files belong to it which would lead to
only a partial uninstall.

Questo errore si verifica su Mac OSX quando pip tenta di eseguire l'upgrade del pacchetto six preinstallato. Per risolvere il problema, aggiungi il flag --ignore-installed six al comando pip install.