Môi trường máy chủ và FCM
Phía máy chủ của Firebase Cloud Messaging bao gồm hai thành phần:
- Phần phụ trợ FCM do Google cung cấp.
- Máy chủ ứng dụng hoặc môi trường máy chủ đáng tin cậy khác nơi logic máy chủ của bạn chạy, chẳng hạn như Cloud Functions for Firebase hoặc các môi trường đám mây khác do Google quản lý.
Máy chủ ứng dụng hoặc môi trường máy chủ đáng tin cậy của bạn sẽ gửi các yêu cầu thông báo đến phần phụ trợ FCM. Sau đó, phần phụ trợ này sẽ định tuyến thông báo đến các ứng dụng khách chạy trên thiết bị của người dùng.
Các yêu cầu đối với môi trường máy chủ đáng tin cậy
Môi trường máy chủ ứng dụng của bạn phải đáp ứng các tiêu chí sau:
- Có thể gửi các yêu cầu tin nhắn được định dạng chính xác đến phần phụ trợ FCM.
- Có thể xử lý các yêu cầu và gửi lại bằng cách sử dụng thuật toán thời gian đợi luỹ thừa.
- Có thể lưu trữ an toàn thông tin xác thực uỷ quyền máy chủ và mã thông báo đăng ký ứng dụng.
Chọn tuỳ chọn máy chủ
Bạn cần quyết định cách tương tác với máy chủ FCM: sử dụng Firebase Admin SDK hoặc giao thức thô. Do có thể hỗ trợ nhiều ngôn ngữ lập trình phổ biến cũng như các phương thức thuận tiện để xử lý việc xác thực và uỷ quyền, bạn nên sử dụng Firebase Admin SDK.
Sau đây là các tuỳ chọn để tương tác với máy chủ FCM:
- Firebase Admin SDK có hỗ trợ cho Node, Java, Python, C# và Go.
- FCM HTTP v1 API, một API REST có tính năng uỷ quyền an toàn và linh hoạt chức năng nhắn tin trên nhiều nền tảng (Firebase Admin SDK dựa trên giao thức này và cung cấp tất cả các lợi thế vốn có của giao thức này).
Firebase Admin SDK cho FCM
API FCM dành cho quản trị viên xử lý việc xác thực với phần phụ trợ, đồng thời hỗ trợ việc gửi thông báo cũng như quản lý các gói thuê bao chủ đề. Với Firebase Admin SDK, bạn có thể:
- Gửi tin nhắn đến từng thiết bị
- Gửi thư đến các chủ đề và câu lệnh điều kiện khớp với một hoặc nhiều chủ đề.
- Đăng ký và huỷ đăng ký chủ đề cho thiết bị
- Xây dựng tải trọng thông báo phù hợp với các nền tảng mục tiêu khác nhau
SDK Node.js dành cho quản trị viên cung cấp các phương thức để gửi thông báo đến các nhóm thiết bị.
Để thiết lập Firebase Admin SDK, hãy xem phần Thêm Firebase Admin SDK vào máy chủ của bạn. Nếu bạn đã có dự án Firebase, hãy bắt đầu bằng cách Thêm SDK. Ngoài ra, hãy nhớ bật API Thông báo trên đám mây trong trang cài đặt Thông báo trên đám mây cho dự án của bạn. Sau đó, sau khi cài đặt Firebase Admin SDK, bạn có thể bắt đầu ghi logic để tạo yêu cầu gửi.
Giao thức máy chủ FCM
FCM cung cấp FCM HTTP v1 API cho những nhà phát triển thích giao thức máy chủ thô.
Để gửi thông báo, máy chủ ứng dụng sẽ đưa ra yêu cầu POST có tiêu đề HTTP và nội dung HTTP bao gồm các cặp khoá-giá trị JSON. Để biết thông tin chi tiết về các tuỳ chọn cho tiêu đề và nội dung, vui lòng xem bài viết Tạo yêu cầu gửi trên máy chủ ứng dụng