A partire dalla versione 4.0.0, il Firebase Admin SDK per Go ha attivato i moduli Go. Inoltre, sono presenti modifiche che causano interruzioni nella gestione degli errori e nella semantica.
Modifiche all'installazione
In conformità con le best practice dei moduli, la versione principale dell'SDK è stata aggiunta al nome del pacchetto. Questa modifica comporta i seguenti aggiornamenti del nome del pacchetto:
- firebase.google.com/go → firebase.google.com/go/v4
- firebase.google.com/go/auth → firebase.google.com/go/v4/auth
- firebase.google.com/go/db → firebase.google.com/go/v4/db
- firebase.google.com/go/iid → firebase.google.com/go/v4/iid
- firebase.google.com/go/messaging → firebase.google.com/go/v4/messaging
Sviluppatori che utilizzano già i moduli
Utilizza il nome del pacchetto con versione per installare l'ultima versione dell'SDK.
# Install the latest version:
go install firebase.google.com/go/v4@latest
# Or install a specific version:
go install firebase.google.com/go/v4@4.20.0
Quando importi l'SDK, devi utilizzare lo stesso nome del pacchetto con versione nel codice sorgente.
package helloworld
import (
"firebase.google.com/go/v4"
"firebase.google.com/go/v4/auth"
"firebase.google.com/go/v4/messaging"
)
Per installare una versione precedente, utilizza il vecchio nome del pacchetto (senza versione) con un qualificatore di versione esplicito.
# Notice the @v3 suffix.
# This instructs Go tools to fetch the latest v3.x release of the SDK.
go get firebase.google.com/go@v3
Sviluppatori che non utilizzano attualmente i moduli
Gli sviluppatori che non hanno ancora attivato i moduli possono continuare a installare l'SDK utilizzando il nome del pacchetto senza versione.
go get firebase.google.com/go
Tieni presente, tuttavia, che in questo modo viene recuperata l'ultima versione dell'SDK (v4 o successive), che contiene altre modifiche che causano interruzioni dell'API.
Modifiche generali alla gestione degli errori
L'SDK v4 introduce un nuovo pacchetto errorutils che fornisce funzioni per la gestione delle condizioni di errore a livello di piattaforma. Se un errore è stato causato da un errore del servizio di backend, puoi accedere alla risposta di errore originale chiamando la nuova funzione errorutils.HTTPResponse(). Puoi utilizzare le funzioni di questo pacchetto con gli errori restituiti da qualsiasi API dell'SDK.
Modifiche all'API Authentication
- Sono state aggiunte nuove funzioni di gestione degli errori da utilizzare insieme alle API
VerifyIDToken()eVerifySessionCookie():IsIDTokenInvalid()IsIDTokenExpired()IsSessionCookieInvalid()IsSessionCookieExpired()IsCertificateFetchFailed()
- Funzioni ritirate:
IsProjectNotFound()IsUnknown()IsInsufficientPermission()IsInvalidEmail()
Modifiche all'API FCM
- Il tipo
messaging.WebpushFCMOptionsè stato rinominato inmessaging.WebpushFcmOptions. - Funzioni aggiunte:
IsThirdPartyAuthError()IsQuotaExceeded()IsSenderIDMismatch()IsUnregistered()IsUnavailable()
- Funzioni ritirate:
IsInvalidAPNSCredentials()IsMessageRateExceeded()IsMismatchedCredential()IsRegistrationTokenNotRegistered()IsServerUnavailable()IsTooManyTopics()IsUnknown()
Modifiche all'API IID
Tutte le funzioni di gestione degli errori attualmente disponibili nel pacchetto iid sono ora ritirate. Utilizza invece le funzioni di gestione degli errori corrispondenti fornite nel pacchetto errorutils.