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()
và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ànhmessaging.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
.