È possibile accedere a Google Cloud Storage dalla funzionalità UrlFetch
di App Engine. Di conseguenza, esistono tre fonti di possibili errori:
- Errori temporanei di UrlFetch di App Engine.
- Errori temporanei di Google Cloud Storage.
- Errori di Google Cloud Storage relativi all'autorizzazione di bucket e oggetti.
La libreria client di App Engine per Cloud Storage gestisce gli errori di timeout sia sul lato App Engine
lato Google Cloud Storage ed esegue nuovi tentativi automatici, quindi l'app non deve
e aggiungere una logica per gestire questa situazione. La configurazione del meccanismo di timeout e di ripetizione viene esposta tramite la classe RetryParams, che puoi utilizzare per modificare una o tutte le impostazioni predefinite. Puoi
apportare modifiche da applicare a tutte le chiamate di funzione, oppure specificare
una chiamata specifica utilizzando il parametro retry_params
della funzione.
Errori
La libreria client App Engine per Cloud Storage ha definito le seguenti classi di eccezione di errore:
- cloudstorage.Error
-
La classe di base per tutte le eccezioni in questo pacchetto. Gli errori possono essere generati da App Engine o da Google Cloud Storage. Per informazioni dettagliate sui codici di errore HTTP di Google Cloud Storage, consulta Codici di stato e di errore HTTP nella documentazione di Google Cloud Storage.
- cloudstorage.AuthorizationError
- Google Cloud Storage ha ricevuto una richiesta non autorizzata. Questo errore può verificarsi se un'app autorizzata utilizza un token di accesso scaduto. Solitamente, questo errore viene gestito automaticamente nella libreria client di App Engine per Cloud Storage, che riceve un nuovo token di accesso e ritenta la richiesta.
- cloudstorage.ForbiddenError
Questo errore (403) indica che l'utente non è stato autorizzato da Google Cloud Storage a effettuare la richiesta.
- Le varie cause possibili di questo errore sono elencate nella documentazione relativa agli errori di Google Cloud Storage per 403-Forbidden.
- Una causa comune di questo errore è che le autorizzazioni del bucket (ACL del bucket) non sono impostate correttamente per consentire all'app di accedere. Consulta: Autenticazione di Google Cloud Storage per informazioni sulla configurazione dell'accesso.
- cloudstorage.NotFoundError
-
Errore HTTP 404. Il bucket o l'oggetto specificato in una chiamata a
cloudstorage.delete()
,cloudstorage.listbucket()
,cloudstorage.open()
, oppurecloudstorage.stat()
non esiste. - cloudstorage.TimeoutError
- Questo errore viene generato quando il tentativo di contattare i server Google Cloud Storage scade anche dopo i tentativi di nuovo tentativo. Consulta RetryParams per informazioni su come modificare la gestione del timeout e i tentativi ripetuti predefiniti.