Go Yönetici SDK'sı v4'e Geçiş

Sürüm 4.0.0'dan itibaren Firebase Admin SDK for Go, Go modüllerine dahil olmuştur. Ayrıca hata işleme ve anlambilimde de çığır açan değişiklikler var.

Kurulum değişiklikleri

Modüllerin en iyi uygulamalarına uygun olarak SDK'nın ana sürümü paket adına eklenmiştir. Bu değişiklik aşağıdaki paket adı güncellemeleriyle sonuçlanır:

  • 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

Geliştiriciler zaten modülleri kullanıyor

SDK'nın en son sürümünü yüklemek için sürümlendirilmiş 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.13.0

SDK'yı içe aktarırken kaynak kodunda aynı sürüme sahip 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ümlenmemiş) paket adını açık bir sürüm niteleyiciyle 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

Geliştiriciler şu anda modülleri kullanmıyor

Henüz modüllere kaydolmamış geliştiriciler, sürüm değiştirilmemiş paket adını kullanarak SDK'yı yüklemeye devam edebilir.

go get firebase.google.com/go

Ancak bunun, diğer önemli API değişikliklerini içeren SDK'nın en son sürümünü (v4 veya üzeri) getirdiğini unutmayın.

Genel hata işleme değişiklikleri

v4 SDK, platform düzeyindeki hata durumlarını ele almaya yönelik işlevler sağlayan yeni bir errorutils paketi sunar. Bir hatanın arka uç hizmet hatasından kaynaklanması durumunda, yeni errorutils.HTTPResponse() işlevini çağırarak orijinal hata yanıtına erişebilirsiniz. Bu paketteki işlevleri, SDK'daki herhangi bir API'nin döndürdüğü hatalarla kullanabilirsiniz.

Kimlik Doğrulama API'si değişiklikleri

  • VerifyIDToken() ve VerifySessionCookie() 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ü, messaging.WebpushFcmOptions olarak yeniden adlandırıldı.
  • Katma:
    • IsThirdPartyAuthError()
    • IsQuotaExceeded()
    • IsSenderIDMismatch()
    • IsUnregistered()
    • IsUnavailable()
  • Kullanımdan kaldırıldı:
    • IsInvalidAPNSCredentials()
    • IsMessageRateExceeded()
    • IsMismatchedCredential()
    • IsRegistrationTokenNotRegistered()
    • IsServerUnavailable()
    • IsTooManyTopics()
    • IsUnknown()

IID API değişiklikleri

Şu anda iid paketinde mevcut olan tüm hata işleme işlevleri artık kullanımdan kaldırılmıştır. Bunun yerine errorutils paketinde sağlanan ilgili hata işleme işlevlerini kullanın.