A partir da versão 4.0.0, o SDK Admin do Firebase para Go optou pelos módulos Go . Além disso, há mudanças importantes no tratamento de erros e na semântica.
Mudanças de instalação
Em conformidade com as práticas recomendadas dos módulos , a versão principal do SDK foi anexada ao nome do pacote. Essa alteração resulta nas seguintes atualizações de nome de pacote:
- 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
Desenvolvedores já usam módulos
Use o nome do pacote com versão para instalar a versão mais recente do 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
O mesmo nome de pacote com versão deve ser usado no código-fonte ao importar o SDK.
package helloworld
import (
"firebase.google.com/go/v4"
"firebase.google.com/go/v4/auth"
"firebase.google.com/go/v4/messaging"
)
Para instalar uma versão anterior, use o nome do pacote antigo (sem versão) com um qualificador de versão explícito.
# 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
Desenvolvedores que não usam módulos atualmente
Os desenvolvedores que ainda não optaram pelos módulos podem continuar a instalar o SDK usando o nome do pacote sem versão.
go get firebase.google.com/go
Observe, no entanto, que isso busca a versão mais recente do SDK (v4 ou posterior) que contém outras alterações importantes da API.
Mudanças gerais no tratamento de erros
O SDK v4 apresenta um novo pacote errorutils
que fornece funções para lidar com condições de erro no nível da plataforma. Caso um erro tenha sido causado por um erro de serviço de back-end, você pode acessar a resposta de erro original chamando a nova função errorutils.HTTPResponse()
. Você pode usar as funções deste pacote com erros retornados por qualquer API no SDK.
Mudanças na API de autenticação
- Adicionadas novas funções de tratamento de erros para serem usadas em conjunto com as APIs
VerifyIDToken()
eVerifySessionCookie()
:-
IsIDTokenInvalid()
-
IsIDTokenExpired()
-
IsSessionCookieInvalid()
-
IsSessionCookieExpired()
-
IsCertificateFetchFailed()
-
- Descontinuada:
-
IsProjectNotFound()
-
IsUnknown()
-
IsInsufficientPermission()
-
IsInvalidEmail()
-
Mudanças na API FCM
- O tipo
messaging.WebpushFCMOptions
foi renomeado paramessaging.WebpushFcmOptions
. - Adicionado:
-
IsThirdPartyAuthError()
-
IsQuotaExceeded()
-
IsSenderIDMismatch()
-
IsUnregistered()
-
IsUnavailable()
-
- Descontinuada:
-
IsInvalidAPNSCredentials()
-
IsMessageRateExceeded()
-
IsMismatchedCredential()
-
IsRegistrationTokenNotRegistered()
-
IsServerUnavailable()
-
IsTooManyTopics()
-
IsUnknown()
-
Mudanças na API IID
Todas as funções de tratamento de erros atualmente disponíveis no pacote iid
estão obsoletas. Use as funções de tratamento de erros correspondentes fornecidas no pacote errorutils
.