Zum Go Admin SDK Version 4 migrieren

Ab Version 4.0.0 verwendet das Firebase Admin SDK für Go Go-Module. Außerdem gibt es grundlegende Änderungen bei der Fehlerbehandlung und Semantik.

Änderungen bei der Installation

Gemäß den Best Practices für Module, wurde dem Paketnamen die Hauptversion des SDK angehängt. Diese Änderung führt zu den folgenden Aktualisierungen des Paketnamens:

  • 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

Entwickler, die bereits Module verwenden

Verwenden Sie den Paketnamen mit Versionsangabe, um die neueste Version des SDK zu installieren.

# 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

Derselbe Paketname mit Versionsangabe muss im Quellcode verwendet werden, wenn das SDK importiert wird.

package helloworld

import (
        "firebase.google.com/go/v4"
        "firebase.google.com/go/v4/auth"
        "firebase.google.com/go/v4/messaging"
)

Wenn Sie eine frühere Version installieren möchten, verwenden Sie den alten Paketnamen (ohne Versionsangabe) mit einem expliziten Versionsqualifizierer.

# 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

Entwickler, die derzeit keine Module verwenden

Entwickler, die noch keine Module verwenden, können das SDK weiterhin mit dem Paketnamen ohne Versionsangabe installieren.

go get firebase.google.com/go

Dadurch wird jedoch die aktuelle Version des SDK (Version 4 oder höher) abgerufen, die weitere grundlegende API-Änderungen enthält.

Allgemeine Änderungen bei der Fehlerbehandlung

Mit dem SDK der Version 4 wird ein neues errorutils-Paket eingeführt, das Funktionen zur Behandlung von Fehlern auf Plattformebene bietet. Wenn ein Fehler durch einen Backend-Dienstfehler verursacht wurde, können Sie auf die ursprüngliche Fehlerantwort zugreifen, indem Sie die neue Funktion errorutils.HTTPResponse() aufrufen. Sie können die Funktionen in diesem Paket mit Fehlern verwenden, die von einer beliebigen API im SDK zurückgegeben werden.

Authentication API-Änderungen

  • Neue Funktionen zur Fehlerbehandlung, die in Verbindung mit den APIs VerifyIDToken() und VerifySessionCookie() verwendet werden können:
    • IsIDTokenInvalid()
    • IsIDTokenExpired()
    • IsSessionCookieInvalid()
    • IsSessionCookieExpired()
    • IsCertificateFetchFailed()
  • Eingestellt:
    • IsProjectNotFound()
    • IsUnknown()
    • IsInsufficientPermission()
    • IsInvalidEmail()

Änderungen an der FCM API

  • Der Typ messaging.WebpushFCMOptions wurde in messaging.WebpushFcmOptions umbenannt.
  • Hinzugefügt:
    • IsThirdPartyAuthError()
    • IsQuotaExceeded()
    • IsSenderIDMismatch()
    • IsUnregistered()
    • IsUnavailable()
  • Eingestellt:
    • IsInvalidAPNSCredentials()
    • IsMessageRateExceeded()
    • IsMismatchedCredential()
    • IsRegistrationTokenNotRegistered()
    • IsServerUnavailable()
    • IsTooManyTopics()
    • IsUnknown()

Änderungen an der IID API

Alle Funktionen zur Fehlerbehandlung, die derzeit im Paket iid verfügbar sind, sind jetzt eingestellt. Verwenden Sie stattdessen die entsprechenden Funktionen zur Fehlerbehandlung im Paket errorutils.