Od wersji 4.0.0 Firebase Admin SDK dla Go korzysta z modułów Go. Wprowadziliśmy też istotne zmiany w obsłudze błędów i semantyce.
Zmiany dotyczące instalacji
Zgodnie ze sprawdzonymi metodami dotyczącymi modułów do nazwy pakietu została dołączona wersja główna pakietu SDK. Ta zmiana powoduje następujące aktualizacje nazw pakietów:
- thought firebase.google.com/go → firebase.google.com/go/v4
- thought firebase.google.com/go/auth → firebase.google.com/go/v4/auth
- firebase.google.com/go/db → firebase.google.com/go/v4/db
- thought firebase.google.com/go/iid → firebase.google.com/go/v4/iid
- firebase.google.com/go/messaging → firebase.google.com/go/v4/messaging
Deweloperzy, którzy już korzystają z modułów
Aby zainstalować najnowszą wersję pakietu SDK, użyj nazwy pakietu z wersją.
# 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.22.0
Podczas importowania pakietu SDK w kodzie źródłowym należy użyć tej samej nazwy pakietu z wersją.
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 nazwy pakietu (bez wersji) 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
Deweloperzy, którzy obecnie nie używają modułów
Deweloperzy, którzy nie zdecydowali się jeszcze na korzystanie z modułów, mogą nadal instalować pakiet SDK, używając nazwy pakietu bez wersji.
go get firebase.google.com/go
Pamiętaj jednak, że spowoduje to pobranie najnowszej wersji pakietu SDK (wersja 4 lub nowsza), która zawiera inne zmiany interfejsu API powodujące błędy.
Ogólne zmiany w obsłudze błędów
Pakiet SDK w wersji 4 wprowadza nowy pakiet errorutils, który udostępnia funkcje do obsługi błędów na poziomie platformy. Jeśli błąd został spowodowany przez błąd usługi backendu, możesz uzyskać dostęp do pierwotnej odpowiedzi o błędzie, wywołując nową funkcję errorutils.HTTPResponse(). Funkcji w tym pakiecie możesz używać z błędami zwracanymi przez dowolny interfejs API w pakiecie SDK.
Zmiany w interfejsie API Authentication
- Dodaliśmy nowe funkcje obsługi błędów, których można używać w połączeniu z interfejsami API
VerifyIDToken()iVerifySessionCookie():IsIDTokenInvalid()IsIDTokenExpired()IsSessionCookieInvalid()IsSessionCookieExpired()IsCertificateFetchFailed()
- Wycofane:
IsProjectNotFound()IsUnknown()IsInsufficientPermission()IsInvalidEmail()
Zmiany w interfejsie API FCM
- Zmieniono nazwę typu
messaging.WebpushFCMOptionsnamessaging.WebpushFcmOptions. - Dodano:
IsThirdPartyAuthError()IsQuotaExceeded()IsSenderIDMismatch()IsUnregistered()IsUnavailable()
- Wycofane:
IsInvalidAPNSCredentials()IsMessageRateExceeded()IsMismatchedCredential()IsRegistrationTokenNotRegistered()IsServerUnavailable()IsTooManyTopics()IsUnknown()
Zmiany w interfejsie IID API
Wszystkie funkcje obsługi błędów dostępne obecnie w pakiecie iid są teraz wycofane. Zamiast tego użyj odpowiednich funkcji obsługi błędów dostępnych w pakiecie errorutils.