Przeprowadź migrację do Go Admin SDK v4

Począwszy od wersji 4.0.0, pakiet Firebase Admin SDK dla Go zawiera moduły Go . Wprowadzono także przełomowe zmiany w obsłudze błędów i semantyce.

Zmiany w instalacji

Zgodnie z najlepszymi praktykami modułów , do nazwy pakietu dołączona została główna wersja pakietu SDK. Ta zmiana powoduje następujące aktualizacje nazw pakietów:

  • 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

Programiści już korzystają z modułów

Użyj wersjonowanej nazwy pakietu, aby zainstalować najnowszą wersję zestawu 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

Podczas importowania zestawu SDK w kodzie źródłowym należy użyć tej samej wersji pakietu.

package helloworld

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

Aby zainstalować wcześniejszą wersję, użyj starej (niewersjonowanej) nazwy pakietu z jawnym kwalifikatorem wersji.

# 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

Programiści obecnie nie korzystający z modułów

Deweloperzy, którzy nie wyrazili jeszcze zgody na moduły, mogą nadal instalować pakiet SDK, korzystając z niewersjonowanej nazwy pakietu.

go get firebase.google.com/go

Należy jednak pamiętać, że pobiera to najnowszą wersję zestawu SDK (v4 lub nowszą), która zawiera inne istotne zmiany w interfejsie API.

Ogólne zmiany w obsłudze błędów

W pakiecie SDK w wersji 4 wprowadzono nowy pakiet errorutils , który udostępnia funkcje umożliwiające obsługę błędów na poziomie platformy. Jeśli błąd został spowodowany przez błąd usługi backendu, możesz uzyskać dostęp do oryginalnej odpowiedzi na błąd, wywołując nową funkcję errorutils.HTTPResponse() . Z funkcji tego pakietu można korzystać w przypadku błędów zwracanych przez dowolny interfejs API w zestawie SDK.

Zmiany w interfejsie API uwierzytelniania

  • Dodano nowe funkcje obsługi błędów do użycia w połączeniu z interfejsami API VerifyIDToken() i VerifySessionCookie() :
    • IsIDTokenInvalid()
    • IsIDTokenExpired()
    • IsSessionCookieInvalid()
    • IsSessionCookieExpired()
    • IsCertificateFetchFailed()
  • Przestarzałe:
    • IsProjectNotFound()
    • IsUnknown()
    • IsInsufficientPermission()
    • IsInvalidEmail()

Zmiany w API FCM

  • Zmieniono nazwę typu messaging.WebpushFCMOptions na messaging.WebpushFcmOptions .
  • Dodany:
    • IsThirdPartyAuthError()
    • IsQuotaExceeded()
    • IsSenderIDMismatch()
    • IsUnregistered()
    • IsUnavailable()
  • Przestarzałe:
    • IsInvalidAPNSCredentials()
    • IsMessageRateExceeded()
    • IsMismatchedCredential()
    • IsRegistrationTokenNotRegistered()
    • IsServerUnavailable()
    • IsTooManyTopics()
    • IsUnknown()

Zmiany w API IID

Wszystkie funkcje obsługi błędów dostępne obecnie w pakiecie iid są obecnie przestarzałe. Zamiast tego użyj odpowiednich funkcji obsługi błędów dostarczonych w pakiecie errorutils .