Migrazione a Go Admin SDK v4

A partire dalla versione 4.0.0, Firebase Admin SDK per Go ha attivato i moduli Go . Inoltre, sono stati apportati cambiamenti importanti nella gestione degli errori e nella semantica.

Modifiche all'installazione

In conformità alle migliori pratiche 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 già utilizzano i moduli

Utilizza il nome del pacchetto con versione per installare la versione più recente 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.13.0

Lo stesso nome del pacchetto con versione deve essere utilizzato nel codice sorgente durante l'importazione dell'SDK.

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, utilizzare 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

Gli sviluppatori che attualmente non utilizzano i moduli

Gli sviluppatori che non hanno ancora aderito ai moduli possono continuare a installare l'SDK utilizzando il nome del pacchetto senza versione.

go get firebase.google.com/go

Tieni presente, tuttavia, che questa operazione recupera l'ultima versione dell'SDK (v4 o successiva) che contiene altre modifiche API importanti.

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. Nel caso in cui un errore sia stato causato da un errore del servizio backend, è possibile accedere alla risposta all'errore originale chiamando la nuova funzione errorutils.HTTPResponse() . Puoi utilizzare le funzioni di questo pacchetto con gli errori restituiti da qualsiasi API nell'SDK.

Modifiche all'API di autenticazione

  • Aggiunte nuove funzioni di gestione degli errori da utilizzare insieme alle API VerifyIDToken() e VerifySessionCookie() :
    • IsIDTokenInvalid()
    • IsIDTokenExpired()
    • IsSessionCookieInvalid()
    • IsSessionCookieExpired()
    • IsCertificateFetchFailed()
  • Deprecato:
    • IsProjectNotFound()
    • IsUnknown()
    • IsInsufficientPermission()
    • IsInvalidEmail()

Modifiche all'API FCM

  • Rinominato il tipo messaging.WebpushFCMOptions in messaging.WebpushFcmOptions .
  • Aggiunto:
    • IsThirdPartyAuthError()
    • IsQuotaExceeded()
    • IsSenderIDMismatch()
    • IsUnregistered()
    • IsUnavailable()
  • Deprecato:
    • 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 deprecate. Utilizzare invece le corrispondenti funzioni di gestione degli errori fornite nel pacchetto errorutils .