Di chuyển sang SDK dành cho quản trị viên Go phiên bản 4

Kể từ phiên bản 4.0.0, SDK quản trị của Firebase cho Go đã chọn sử dụng Mô-đun Go. Ngoài ra, có những thay đổi có thể gây lỗi trong quá trình xử lý lỗi và ngữ nghĩa.

Thay đổi cài đặt

Để tuân thủ các phương pháp hay nhất về mô-đun, phiên bản chính của SDK đã được thêm vào tên gói. Thay đổi này sẽ dẫn đến việc cập nhật tên gói sau đây:

  • 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

Nhà phát triển đã sử dụng các mô-đun

Sử dụng tên gói được tạo phiên bản để cài đặt phiên bản SDK mới nhất.

# 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

Bạn phải sử dụng cùng một tên gói có phiên bản trong mã nguồn khi nhập SDK.

package helloworld

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

Để cài đặt một phiên bản cũ, hãy sử dụng tên gói cũ (chưa được tạo phiên bản) kèm theo bộ hạn định phiên bản rõ ràng.

# 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

Nhà phát triển hiện không sử dụng các mô-đun

Những nhà phát triển chưa chọn sử dụng các mô-đun có thể tiếp tục cài đặt SDK bằng cách sử dụng tên gói chưa được tạo phiên bản.

go get firebase.google.com/go

Tuy nhiên, xin lưu ý rằng thao tác này sẽ tìm nạp phiên bản mới nhất của SDK (phiên bản 4 trở lên) có chứa các thay đổi khác về API có thể gây lỗi.

Các thay đổi về cách xử lý lỗi chung

SDK v4 giới thiệu một gói errorutils mới cung cấp các hàm để xử lý các điều kiện lỗi ở cấp nền tảng. Trong trường hợp xảy ra lỗi do lỗi dịch vụ phụ trợ, bạn có thể truy cập vào phản hồi lỗi ban đầu bằng cách gọi hàm mới errorutils.HTTPResponse(). Bạn có thể sử dụng các hàm trong gói này với các lỗi được trả về bởi bất kỳ API nào trong SDK.

Thay đổi về API xác thực

  • Thêm các hàm xử lý lỗi mới để dùng cùng với API VerifyIDToken()VerifySessionCookie():
    • IsIDTokenInvalid()
    • IsIDTokenExpired()
    • IsSessionCookieInvalid()
    • IsSessionCookieExpired()
    • IsCertificateFetchFailed()
  • Không dùng nữa:
    • IsProjectNotFound()
    • IsUnknown()
    • IsInsufficientPermission()
    • IsInvalidEmail()

Các thay đổi về API FCM

  • Đổi tên loại messaging.WebpushFCMOptions thành messaging.WebpushFcmOptions.
  • Đã thêm:
    • IsThirdPartyAuthError()
    • IsQuotaExceeded()
    • IsSenderIDMismatch()
    • IsUnregistered()
    • IsUnavailable()
  • Không dùng nữa:
    • IsInvalidAPNSCredentials()
    • IsMessageRateExceeded()
    • IsMismatchedCredential()
    • IsRegistrationTokenNotRegistered()
    • IsServerUnavailable()
    • IsTooManyTopics()
    • IsUnknown()

Các thay đổi về IID API

Tất cả hàm xử lý lỗi hiện có trong gói iid không còn được dùng nữa. Thay vào đó, hãy sử dụng các hàm xử lý lỗi tương ứng được cung cấp trong gói errorutils.