跳转到主要内容

调用 Bot API:请求鉴权、ID 规则与限流

MPChat Bot 请求如何鉴权与构造:基础 URL、token 安全五条规则、HTTP 方法、Content-Type、ID 类型规则,以及每秒 30 次限流。

使用 Authorization: Bearer <token> 请求头鉴权,token 只保存在服务端。


总览

Bot API 地址为 https://call.mp.net/bot/{methodName}。例如,调用 getMe 验证 Bot 身份。

curl --silent --show-error "https://call.mp.net/bot/getMe" \
-H "Authorization: Bearer ${MPCHAT_BOT_TOKEN}"

既有接入仍可用 https://call.mp.net/bot/bot{MPCHAT_BOT_TOKEN}/{methodName} 鉴权。两处同时传 token 时,API 以 Bearer token 为准。

Token 安全规则

  • 不进前端——WebView、浏览器、移动端代码都不得包含。

  • 应用日志、代理访问日志、链路追踪和错误上报都要脱敏,覆盖 Authorization 请求头和含 token 的旧式 URL。

  • 不进版本库——.env 加入 .gitignore;通过 CI 密钥注入。

  • 不进聊天——工单、IM、AI 对话禁止粘贴真实 token。

  • 泄露即轮换——立即在 BotFather revoke 并更换。

HTTP 方法与 Content-Type

  • 多数写操作为 POST。getMe、getUpdates、getWebhookInfo、getMyCommands 同时支持 GET。

  • application/json——绝大多数写方法。

  • multipart/form-data——媒体本地上传(sendPhoto、sendVideo、sendDocument、setChatPhoto)。

ID 类型规则

chat_id、user_id、message_id 接受 JavaScript 安全整数(0–9007199254740991)或同范围十进制字符串。建议用 BIGINT 或 VARCHAR 存储,注意 JSON 精度。

限流

默认每 token 每秒 30 次;超限返回 429。生产代码必须实现指数退避(见生产检查清单)。

请求前检查清单

  • token 从环境变量读取。

  • ID 类型符合文档约定。

  • POST body 为合法 JSON。

  • 媒体方法使用公网 URL 或 multipart(不复用 file_id)。

相关文章

测试与生产 Bot 使用不同 token。token 泄露应优先 revoke。

这是否解答了您的问题?