Discord API chính thức là một bề mặt cấp thấp, được xây dựng cho bot và client; bạn làm việc với các sự kiện gateway, tự cache và tự xử lý intents. Noxyr Server API là một HTTP API cấp cao, giới hạn trong một máy chủ và trả về phân tích đã hoàn chỉnh. Hai bên giải quyết những bài toán khác nhau. Dưới đây là khi nào nên dùng mỗi cái.
Discord API cung cấp gì cho bạn
Tài liệu Discord API (được tìm kiếm rất nhiều; Google Trends cho thấy các truy vấn "discord api documentation" tăng 700% so với cùng kỳ năm trước) là nguồn chính thức cho mọi thứ mà chính Discord sở hữu: tin nhắn, người dùng, guild, vai trò, kênh, thoại, luồng và kiểm duyệt. Bạn có một REST API để thực hiện hành động và một WebSocket gateway để nhận sự kiện. Xây dựng bất cứ thứ gì theo thời gian thực đều cần mở một kết nối liên tục, xử lý READY và heartbeat, quản lý cache và các bucket giới hạn tốc độ.
Noxyr Server API cung cấp gì cho bạn
Noxyr Server API là một bề mặt nhỏ hơn nhiều: sáu endpoint chỉ đọc, giới hạn trong một máy chủ duy nhất thông qua bearer token. Nó trả lời những câu hỏi như "tháng này có bao nhiêu vé?" hoặc "doanh thu theo từng loại tiền tệ" mà Discord API hoàn toàn không trả lời được, vì dữ liệu nền nằm trong cơ sở dữ liệu của Noxyr, không nằm trong Discord.
So sánh trực tiếp
- Xác thực: Discord dùng OAuth2 hoặc token bot kèm intents. Noxyr dùng một bearer token cho mỗi máy chủ.
- Giao thức: Discord là REST + WebSocket gateway. Noxyr là HTTPS thuần với CORS được bật cho trình duyệt.
- Phạm vi: Discord là toàn cục đối với bot của bạn trên mọi máy chủ mà nó có mặt. Noxyr gắn với một máy chủ cụ thể.
- Cấu trúc dữ liệu: Discord trả về các đối tượng thô: guild, thành viên, tin nhắn. Noxyr trả về dữ liệu tổng hợp: tổng số, trung bình, theo từng ngày.
- Giới hạn tốc độ: Discord dùng các bucket giới hạn theo từng route. Noxyr là 60 yêu cầu/phút cố định cho mỗi key.
- Công sức thiết lập: Discord cần một ứng dụng bot, lời mời, intents, các trình xử lý sự kiện. Noxyr chỉ cần một cú nhấp để tạo key.
Chọn Discord khi…
- Bạn cần sự kiện thời gian thực (một tin nhắn vừa đến, một thành viên vừa tham gia, một kênh thoại vừa thay đổi).
- Bạn muốn gửi tin nhắn, chỉnh sửa kênh, cấm người dùng hoặc quản lý vai trò từ ứng dụng của mình.
- Bạn đang xây dựng một bot Discord hoặc một client Discord bên thứ ba.
Chọn Noxyr Server API khi…
- Bạn muốn hiển thị thống kê máy chủ trực tiếp trên một trang web công khai mà không phải duy trì một bot.
- Bạn cần phân tích vé, dữ liệu bán hàng, điểm đánh giá trung bình hoặc số người tham gia giveaway, những dữ liệu mà Discord không lưu.
- Bạn muốn JSON thân thiện với CORS để gọi trực tiếp từ bảng điều khiển trên trình duyệt mà không cần proxy.
- Bạn muốn một bề mặt ổn định, có phiên bản, nơi các công tắc phạm vi cho phép bạn ngừng phơi bày dữ liệu mà không cần triển khai lại bất cứ thứ gì.
Dùng cả hai cùng nhau
Hai API này kết hợp rất tốt. Dùng Discord API trong bot của bạn để phản ứng với sự kiện, và dùng Noxyr Server API để đọc trạng thái đã tổng hợp trên trang web của bạn. Như vậy, bảng điều khiển công khai của bạn không cần intents của bot hay kết nối gateway nào cả; một yêu cầu HTTPS là đủ.
Thêm: hướng dẫn Server API, nguyên tắc thiết kế, xử lý lỗi Discord API.