Môi trường máy chủ của bạn và FCM

Phía máy chủ của Firebase Cloud Messaging bao gồm 2 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 cho 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 yêu cầu tin nhắn đến phần phụ trợ FCM. Sau đó, phần phụ trợ này sẽ định tuyến tin nhắn đến các ứng dụng khách đang chạy trên thiết bị của người dùng.

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 về tin nhắn được định dạng đúng cách đế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 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 một lựa chọn về máy chủ

Bạn cần quyết định cách tương tác với các máy chủ FCM: sử dụng Firebase Admin SDK hoặc giao thức thô. Vì hỗ trợ các ngôn ngữ lập trình phổ biến và các phương thức thuận tiện để xử lý việc xác thực và uỷ quyền, nên Firebase Admin SDK là phương thức được đề xuất.

Sau đây là các lựa chọn để tương tác với máy chủ FCM:

  • Firebase Admin SDK, có hỗ trợ Node, Java, Python, C#Go.
  • FCM HTTP v1 API, một API REST có khả năng uỷ quyền bảo mật và nhắn tin linh hoạt 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).

Firebase Admin SDK cho FCM

Admin FCM API xử lý việc xác thực với phần phụ trợ, đồng thời hỗ trợ gửi thông báo và quản lý việc đăng ký theo chủ đề. Với Firebase Admin SDK, bạn có thể:

  • Gửi thông báo đến từng thiết bị
  • Gửi thông báo đế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ý thiết bị theo dõi chủ đề
  • Tạo tải trọng thông báo phù hợp với nhiều nền tảng mục tiêu

Admin Node.js SDK 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ó một dự án Firebase, hãy bắt đầu bằng cách Thêm SDK. Ngoài ra, hãy nhớ bật API Nhắn tin qua đám mây trong trang cài đặt Nhắn tin qua đám mây cho dự án của bạn. Sau khi cài đặt Firebase Admin SDK, bạn có thể bắt đầu viết logic để tạo yêu cầu gửi.

FCM giao thức máy chủ

FCM cung cấp FCM HTTP v1 API cho những nhà phát triển muốn dùng giao thức máy chủ thô.

Để gửi một thông báo, máy chủ ứng dụng sẽ đưa ra một 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 lựa chọn tiêu đề và nội dung, hãy xem phần Tạo yêu cầu gửi của máy chủ ứng dụng