Go के एडमिन SDK v4 पर माइग्रेट करें

Go के लिए Firebase Admin SDK, 4.0.0 वर्शन से Go मॉड्यूल के लिए ऑप्ट इन हो गया है. साथ ही, गड़बड़ी को मैनेज करने और सिमेंटिक्स में भी बदलाव किए गए हैं.

इंस्टॉलेशन में बदलाव

मॉड्यूल के सबसे सही तरीकों के मुताबिक, पैकेज के नाम में SDK टूल के मेजर वर्शन को जोड़ दिया गया है. इस बदलाव की वजह से, पैकेज के नाम में ये अपडेट होंगे:

  • 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

ऐसे डेवलपर जो पहले से मॉड्यूल का इस्तेमाल कर रहे हैं

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.15.0

SDK टूल को इंपोर्ट करते समय, सोर्स कोड में उसी वर्शन वाले पैकेज का नाम इस्तेमाल किया जाना चाहिए.

package helloworld

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

कोई पुराना वर्शन इंस्टॉल करने के लिए, अश्लील वर्शन क्वालीफ़ायर के साथ पुराने (वर्शन नहीं किया गया) पैकेज के नाम का इस्तेमाल करें.

# 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

ऐसे डेवलपर जो फ़िलहाल मॉड्यूल का इस्तेमाल नहीं कर रहे हैं

जिन डेवलपर ने अब तक मॉड्यूल के लिए ऑप्ट इन नहीं किया है वे बिना वर्शन वाले पैकेज के नाम का इस्तेमाल करके, SDK को इंस्टॉल करना जारी रख सकते हैं.

go get firebase.google.com/go

हालांकि, ध्यान रखें कि इससे SDK टूल का सबसे नया वर्शन (वर्शन 4 या उसके बाद का वर्शन) फ़ेच किया जाता है. इसमें नुकसान पहुंचाने वाले एपीआई में हुए अन्य बदलाव शामिल होते हैं.

गड़बड़ी ठीक करने से जुड़े सामान्य बदलाव

v4 SDK टूल में एक नया errorutils पैकेज जोड़ा गया है. यह प्लैटफ़ॉर्म-लेवल पर गड़बड़ी की स्थितियों को मैनेज करने के लिए फ़ंक्शन उपलब्ध कराता है. अगर गड़बड़ी, बैकएंड सेवा की गड़बड़ी की वजह से हुई है, तो नए फ़ंक्शन errorutils.HTTPResponse() को कॉल करके, गड़बड़ी का मूल जवाब ऐक्सेस किया जा सकता है. इस पैकेज में मौजूद फ़ंक्शन का इस्तेमाल, SDK टूल में किसी भी एपीआई से मिली गड़बड़ियों के साथ किया जा सकता है.

Authentication एपीआई में हुए बदलाव

  • गड़बड़ी को मैनेज करने के नए फ़ंक्शन जोड़े गए हैं. इनका इस्तेमाल VerifyIDToken() और VerifySessionCookie() एपीआई के साथ किया जा सकता है:
    • IsIDTokenInvalid()
    • IsIDTokenExpired()
    • IsSessionCookieInvalid()
    • IsSessionCookieExpired()
    • IsCertificateFetchFailed()
  • अब काम नहीं करता:
    • IsProjectNotFound()
    • IsUnknown()
    • IsInsufficientPermission()
    • IsInvalidEmail()

FCM एपीआई में हुए बदलाव

  • टाइप का नाम messaging.WebpushFCMOptions से बदलकर messaging.WebpushFcmOptions किया गया.
  • जोड़ा गया:
    • IsThirdPartyAuthError()
    • IsQuotaExceeded()
    • IsSenderIDMismatch()
    • IsUnregistered()
    • IsUnavailable()
  • अब काम नहीं करता:
    • IsInvalidAPNSCredentials()
    • IsMessageRateExceeded()
    • IsMismatchedCredential()
    • IsRegistrationTokenNotRegistered()
    • IsServerUnavailable()
    • IsTooManyTopics()
    • IsUnknown()

आईआईडी एपीआई में हुए बदलाव

iid पैकेज में फ़िलहाल, गड़बड़ी को मैनेज करने वाले सभी फ़ंक्शन अब काम नहीं करते. इसके बजाय, errorutils पैकेज में दिए गए, गड़बड़ी को मैनेज करने वाले फ़ंक्शन का इस्तेमाल करें.