ErrorCode

Mã lỗi cho điều kiện lỗi FCM.

Mã lỗi Các bước mô tả và giải quyết
UNSPECIFIED_ERROR Không có thêm thông tin nào về lỗi này. Không có.
INVALID_ARGUMENT (Mã lỗi HTTP = 400) Tham số yêu cầu không hợp lệ. Phần mở rộng thuộc loại google.rpc.BadRequest được trả về để chỉ định trường nào không hợp lệ. Các nguyên nhân có thể là do đăng ký không hợp lệ, tên gói không hợp lệ, thông báo quá lớn, khoá dữ liệu không hợp lệ, TTL không hợp lệ hoặc các thông số không hợp lệ khác.
Đăng ký không hợp lệ: Hãy kiểm tra định dạng của mã thông báo đăng ký mà bạn chuyển đến máy chủ. Đảm bảo mã này khớp với mã thông báo đăng ký mà ứng dụng khách nhận được khi đăng ký bằng FCM. Đừng cắt bớt mã thông báo hoặc thêm các ký tự bổ sung.
Tên gói không hợp lệ: Đảm bảo rằng thông báo được gửi tới một mã thông báo đăng ký có tên gói khớp với giá trị được truyền trong yêu cầu.
Thư quá lớn: Kiểm tra để đảm bảo rằng tổng kích thước của dữ liệu tải trọng trong một tin nhắn không vượt quá giới hạn của FCM: 4096 byte đối với hầu hết các tin nhắn hoặc 2048 byte đối với tin nhắn đến chủ đề. Điều này bao gồm cả khoá và giá trị.
Khoá dữ liệu không hợp lệ: Kiểm tra để đảm bảo rằng dữ liệu tải trọng không chứa khoá (chẳng hạn như from hoặc gcm hoặc bất kỳ giá trị nào có tiền tố google) mà FCM sử dụng nội bộ. Lưu ý rằng một số từ (chẳng hạn như coll_key) cũng được FCM sử dụng nhưng được cho phép trong tải trọng. Trong trường hợp đó, giá trị tải trọng sẽ bị giá trị FCM ghi đè.
TTL không hợp lệ: Kiểm tra để đảm bảo rằng giá trị dùng trong ttl là một số nguyên đại diện cho khoảng thời gian tính bằng giây, từ 0 đến 2.419.200 (4 tuần).
Tham số không hợp lệ: Kiểm tra để đảm bảo rằng các tham số đã cung cấp có tên và loại chính xác.
UNREGISTERED (Mã lỗi HTTP = 404) Phiên bản ứng dụng đã bị huỷ đăng ký khỏi FCM. Điều này thường có nghĩa là mã thông báo được sử dụng không còn hợp lệ và bạn phải sử dụng mã mới. Lỗi này có thể xảy ra do thiếu mã thông báo đăng ký hoặc mã thông báo chưa đăng ký.
Thiếu thông tin đăng ký: Nếu mục tiêu của thông báo là giá trị token, hãy kiểm tra để đảm bảo yêu cầu có chứa mã thông báo đăng ký.
Chưa đăng ký: Mã thông báo đăng ký hiện có có thể không hợp lệ trong một số trường hợp, bao gồm:
– Nếu ứng dụng khách huỷ đăng ký với FCM.
– Nếu ứng dụng khách tự động bị huỷ đăng ký, điều này có thể xảy ra nếu người dùng gỡ cài đặt ứng dụng. Ví dụ: trên iOS, nếu Dịch vụ phản hồi của APN báo cáo mã thông báo APN là không hợp lệ.
– Nếu mã thông báo đăng ký hết hạn (ví dụ: Google có thể quyết định làm mới mã thông báo đăng ký hoặc mã thông báo APN đã hết hạn đối với thiết bị iOS).
– Nếu ứng dụng khách đã được cập nhật nhưng phiên bản mới không được định cấu hình để nhận thông báo.
Đối với tất cả những trường hợp này, hãy xoá mã thông báo đăng ký này khỏi máy chủ ứng dụng và ngừng sử dụng mã này để gửi tin nhắn.
SENDER_ID_MISMATCH (Mã lỗi HTTP = 403) Mã người gửi được xác thực khác với mã người gửi của mã thông báo đăng ký. Mã thông báo đăng ký được liên kết với một nhóm người gửi nhất định. Khi ứng dụng khách đăng ký FCM, ứng dụng khách phải chỉ định người gửi nào được phép gửi thư. Bạn nên sử dụng một trong các mã nhận dạng người gửi đó khi gửi tin nhắn đến ứng dụng khách. Nếu bạn chuyển sang người gửi khác, mã thông báo đăng ký hiện có sẽ không hoạt động.
QUOTA_EXCEEDED (Mã lỗi HTTP = 429) Đã vượt quá giới hạn gửi đối với mục tiêu thông báo. Phần mở rộng thuộc loại google.rpc.QuotaFailure được trả về để chỉ định hạn mức nào đã vượt quá. Lỗi này có thể xảy ra do vượt quá hạn mức tốc độ tin nhắn, vượt quá hạn mức tốc độ tin nhắn trên thiết bị hoặc vượt quá hạn mức tốc độ tin nhắn theo chủ đề.
Đã vượt quá tốc độ tin nhắn: Tốc độ gửi tin nhắn quá cao. Bạn phải giảm tổng tần suất gửi tin nhắn. Sử dụng thuật toán thời gian đợi luỹ thừa với độ trễ ban đầu tối thiểu là 1 phút để thử lại các thông báo bị từ chối.
Đã vượt quá tỷ lệ tin nhắn trên thiết bị: Tỷ lệ tin nhắn đến một thiết bị cụ thể quá cao. Xem giới hạn số lượng tin nhắn cho một thiết bị. Hãy giảm số lượng tin nhắn gửi đến thiết bị này và dùng thuật toán thời gian đợi luỹ thừa để thử gửi lại.
Đã vượt quá tỷ lệ tin nhắn theo chủ đề: Tỷ lệ tin nhắn gửi đến người đăng ký một chủ đề cụ thể quá cao. Hãy giảm số lượng tin nhắn được gửi cho chủ đề này và sử dụng thời gian đợi luỹ thừa với độ trễ ban đầu tối thiểu là 1 phút để thử gửi lại.
UNAVAILABLE (Mã lỗi HTTP = 503) Máy chủ bị quá tải. Máy chủ không thể xử lý yêu cầu kịp thời. Thử gửi lại cùng một yêu cầu, nhưng bạn phải:
– Thực hiện tiêu đề Thử lại sau nếu tiêu đề đó có trong phản hồi từ Máy chủ kết nối FCM.
– Triển khai thời gian đợi luỹ thừa trong cơ chế thử lại. (ví dụ: nếu bạn đợi một giây trước lần thử đầu tiên, hãy chờ ít nhất 2 giây trước lần thử tiếp theo, sau đó 4 giây, v.v.). Nếu bạn đang gửi nhiều thư, hãy xem xét việc áp dụng chế độ rung. Để biết thêm thông tin, hãy xem phần Xử lý lần thử lại. Những người gửi gây ra sự cố có nguy cơ sẽ bị đưa vào danh sách từ chối.
INTERNAL (Mã lỗi HTTP = 500) Đã xảy ra lỗi nội bộ không xác định. Máy chủ đã gặp lỗi trong khi cố gắng xử lý yêu cầu. Bạn có thể thử lại chính yêu cầu đó theo các đề xuất trong phần Xử lý lần thử lại. Nếu lỗi vẫn tiếp diễn, vui lòng liên hệ với bộ phận hỗ trợ của Firebase.
THIRD_PARTY_AUTH_ERROR (mã lỗi HTTP = 401) Chứng chỉ APN hoặc khoá xác thực đẩy trên web không hợp lệ hoặc bị thiếu. Không thể gửi thư nhắm mục tiêu đến thiết bị iOS hoặc đăng ký đẩy trên web. Kiểm tra tính hợp lệ của thông tin đăng nhập vào quá trình phát triển và phát hành công khai.