Go için Firebase Admin SDK, 4.0.0 sürümünden itibaren Go modüllerini kullanmaya başlamıştır. Ayrıca, hata işleme ve semantikte de önemli değişiklikler var.
Yükleme değişiklikleri
Modüllerle ilgili en iyi uygulamalara uygun olarak, SDK'nın ana sürümü paket adına eklendi. Bu değişiklik, aşağıdaki paket adı güncellemelerine neden olur:
- 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
Modülleri zaten kullanan geliştiriciler
SDK'nın en son sürümünü yüklemek için sürüm içeren paket adını kullanın.
# 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.18.0
SDK'yı içe aktarırken kaynak kodda aynı sürüm oluşturulmuş paket adı kullanılmalıdır.
package helloworld
import (
"firebase.google.com/go/v4"
"firebase.google.com/go/v4/auth"
"firebase.google.com/go/v4/messaging"
)
Daha önceki bir sürümü yüklemek için eski (sürüm içermeyen) paket adını açık bir sürüm niteleyicisiyle birlikte kullanın.
# 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
Şu anda modül kullanmayan geliştiriciler
Henüz modülleri etkinleştirmemiş olan geliştiriciler, sürüm içermeyen paket adını kullanarak SDK'yı yüklemeye devam edebilir.
go get firebase.google.com/go
Ancak bu işlemin, diğer API değişikliklerini içeren SDK'nın en yeni sürümünü (4. sürüm veya sonrası) getirdiğini unutmayın.
Genel hata işleme değişiklikleri
v4 SDK'sı, platform düzeyindeki hata koşullarını işlemek için işlevler sağlayan yeni bir errorutils
paketi sunar. Bir hata arka uç hizmeti hatasından kaynaklanıyorsa errorutils.HTTPResponse()
adlı yeni işlevi çağırarak orijinal hata yanıtına erişebilirsiniz. Bu paketteki işlevleri, SDK'daki herhangi bir API'nin döndürdüğü hatalarla birlikte kullanabilirsiniz.
Authentication API değişiklikleri
VerifyIDToken()
veVerifySessionCookie()
API'leriyle birlikte kullanılacak yeni hata işleme işlevleri eklendi:IsIDTokenInvalid()
IsIDTokenExpired()
IsSessionCookieInvalid()
IsSessionCookieExpired()
IsCertificateFetchFailed()
- Kullanımdan kaldırıldı:
IsProjectNotFound()
IsUnknown()
IsInsufficientPermission()
IsInvalidEmail()
FCM API değişiklikleri
messaging.WebpushFCMOptions
türünün adımessaging.WebpushFcmOptions
olarak değiştirildi.- Eklendi:
IsThirdPartyAuthError()
IsQuotaExceeded()
IsSenderIDMismatch()
IsUnregistered()
IsUnavailable()
- Kullanımdan kaldırıldı:
IsInvalidAPNSCredentials()
IsMessageRateExceeded()
IsMismatchedCredential()
IsRegistrationTokenNotRegistered()
IsServerUnavailable()
IsTooManyTopics()
IsUnknown()
IID API değişiklikleri
iid
paketinde şu anda bulunan tüm hata işleme işlevleri artık kullanımdan kaldırıldı. Bunun yerine errorutils
paketinde sağlanan ilgili hata işleme işlevlerini kullanın.