نقل البيانات إلى الإصدار 4 من حزمة تطوير البرامج (SDK) للمشرف في Go

بدايةً من الإصدار 4.0.0، تم تفعيل حزمة تطوير البرامج (SDK) لمشرف Firebase for Go في وحدات 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.14.1

ويجب استخدام اسم الحزمة ذات الإصدارات نفسها في رمز المصدر عند استيراد حزمة 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 أو الإصدارات الأحدث) الذي يحتوي على تغييرات أخرى قد تؤدي إلى أعطال في واجهة برمجة التطبيقات.

تغييرات معالجة الأخطاء العامة

توفّر حزمة تطوير البرامج (SDK) الإصدار 4 حزمة errorutils جديدة توفّر وظائف للتعامل مع حالات الأخطاء على مستوى النظام الأساسي. في حال حدوث خطأ بسبب خطأ في خدمة الخلفية، يمكنك الوصول إلى الاستجابة الأصلية للخطأ من خلال استدعاء الدالة الجديدة errorutils.HTTPResponse(). يمكنك استخدام الدوال الموجودة في هذه الحزمة مع الأخطاء التي تعرضها أي واجهة برمجة تطبيقات في حزمة SDK.

تغييرات Authentication API

  • تمت إضافة دوال جديدة للتعامل مع الأخطاء لاستخدامها مع واجهتَي برمجة التطبيقات VerifyIDToken() وVerifySessionCookie():
    • IsIDTokenInvalid()
    • IsIDTokenExpired()
    • IsSessionCookieInvalid()
    • IsSessionCookieExpired()
    • IsCertificateFetchFailed()
  • تم إيقاف العمل بها:
    • IsProjectNotFound()
    • IsUnknown()
    • IsInsufficientPermission()
    • IsInvalidEmail()

التغييرات على واجهة برمجة تطبيقات "المراسلة عبر السحابة الإلكترونية من Firebase"

  • تمت إعادة تسمية النوع messaging.WebpushFCMOptions إلى messaging.WebpushFcmOptions.
  • تمت إضافة:
    • IsThirdPartyAuthError()
    • IsQuotaExceeded()
    • IsSenderIDMismatch()
    • IsUnregistered()
    • IsUnavailable()
  • تم إيقاف العمل بها:
    • IsInvalidAPNSCredentials()
    • IsMessageRateExceeded()
    • IsMismatchedCredential()
    • IsRegistrationTokenNotRegistered()
    • IsServerUnavailable()
    • IsTooManyTopics()
    • IsUnknown()

التغييرات على واجهة برمجة تطبيقات IID

تم إيقاف جميع وظائف معالجة الأخطاء المتوفرة حاليًا في حزمة iid نهائيًا. يمكنك استخدام وظائف معالجة الأخطاء المقابلة المتوفّرة في حزمة "errorutils" بدلاً من ذلك.