Kể từ phiên bản 4.0.0, Firebase Admin SDK cho Go đã chọn sử dụng mô-đun Go. Ngoài ra, còn có những thay đổi có thể gây lỗi trong cách xử lý lỗi và ngữ nghĩa.
Thay đổi về việc cài đặt
Để tuân thủ các phương pháp hay nhất về mô-đun, phiên bản lớn của SDK đã được thêm vào tên gói. Thay đổi này dẫn đến các nội dung cập nhật tên gói sau:
- 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 mô-đun
Sử dụng tên gói có phiên bản để cài đặt phiên bản mới nhất của 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.22.0
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 phiên bản cũ hơn, hãy sử dụng tên gói cũ (không có phiên bản) với 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 mô-đun
Những nhà phát triển chưa chọn sử dụng mô-đun có thể tiếp tục cài đặt SDK bằng tên gói không có 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 có thể gây lỗi khác đối với API.
Các thay đổi chung về cách xử lý lỗi
SDK phiên bản 4 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 lỗi là 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 lỗi do bất kỳ API nào trong SDK trả về.
Thay đổi về API Authentication
- Thêm các hàm xử lý lỗi mới để sử dụng cùng với API
VerifyIDToken()vàVerifySessionCookie():IsIDTokenInvalid()IsIDTokenExpired()IsSessionCookieInvalid()IsSessionCookieExpired()IsCertificateFetchFailed()
- Không dùng nữa:
IsProjectNotFound()IsUnknown()IsInsufficientPermission()IsInvalidEmail()
Thay đổi về API FCM
- Đổi tên loại
messaging.WebpushFCMOptionsthànhmessaging.WebpushFcmOptions. - Đã thêm:
IsThirdPartyAuthError()IsQuotaExceeded()IsSenderIDMismatch()IsUnregistered()IsUnavailable()
- Không dùng nữa:
IsInvalidAPNSCredentials()IsMessageRateExceeded()IsMismatchedCredential()IsRegistrationTokenNotRegistered()IsServerUnavailable()IsTooManyTopics()IsUnknown()
Thay đổi về API IID
Tất cả các hàm xử lý lỗi hiện có trong gói iid hiện 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.