Risolvere i problemi di autenticazione e autorizzazione

In questa pagina vengono descritti alcuni problemi comuni che potresti riscontrare relativi ad autenticazione e autorizzazione.

This app isn't verified

Se nella schermata per il consenso OAuth viene visualizzato l'avviso "Questa app non è stata verificata", l'app richiede ambiti che forniscono 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 continuare oltre questo avviso selezionando Avanzate > Vai a {Project Name} (non sicuro).

File not found error for credentials.json

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

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

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

Token has been expired or revoked

Quando esegui l'esempio di codice, potresti ricevere un 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 su potenziali cause e correzioni, consulta Scadenza del token di aggiornamento.

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, dove l'installazione predefinita del modulo six (una dipendenza della libreria Python) viene caricata prima di quella da cui è stato installato il pip. Per risolvere il problema, aggiungi il percorso di installazione di pip alla variabile di ambiente di sistema PYTHONPATH:

  1. Determina il percorso di installazione di pip:

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

    Prendi nota di questo luogo perché è necessario per il passaggio successivo.

  2. Aggiungi la seguente riga al file ~/.bashrc, sostituendo INSTALL_PATH con la posizione determinata dal 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 all'ultima versione 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 aggirare il problema, aggiungi il flag --ignore-installed six al comando pip install.