跳转到主要内容

MPChat Bot 与 MiniApp 常见问题(chat_id、409、file_id、429、initData 等)

MPChat Bot 与 MiniApp 最常见问题的快速解答:如何拿 chat_id、处理 409、file_id 复用、429 应对、initData 能否登录、哪些方法不能随便测。

快速解答开发者最先遇到的问题。参数级细节见 core.mp.net/bots


总览

按话题分组的常见问题。若这里没有你的问题,请查阅本栏目对应指南。

快速开始

  • 从哪开始?非开发者:10 分钟试跑(Windows / iOS)。开发者:curl + Node.js 快速接入。

  • mpbot 是什么?测试/开发用 Bot,有独立 token 与 API 权限,与生产隔离。

  • token 放哪?环境变量或密钥管理。绝不进 git、日志或前端。

收发消息

  • Bot 为何不能主动私聊?用户须先建立上下文;sendMessage 需要有效 chat_id

  • chat_id 如何获取?用户发消息 → getUpdates → 读 message.chat.id。私聊通常等于 user id。

  • getUpdates 返回 []?还没消息,或该批已被消费。检查 offset 与 Webhook 状态。

  • getUpdates 返回 409?已启用 Webhook(与轮询互斥)。用 getWebhookInfo 确认;勿自行执行 deleteWebhook

媒体与限制

  • file_id 能复用吗?不能。用公网 URL 或 multipart。

  • banChatMember 会踢人吗?不会——仅禁言(restricted)。用 unbanChatMember 解除。L3 DocOnly。

  • sendPoll / sendLocation 为何不可用?当前返回 501。

  • 触发 429 怎么办?不超过每秒 30 次,并加指数退避。

MiniApp

  • 前端数据能直接登录吗?不能。后端必须验证 initData 签名;initDataUnsafe 仅用于 UI。

安全

  • 哪些方法不能随便测?DocOnly:logOutleaveChatdeleteMessage(s)banChatMembersetWebhookdeleteWebhook

  • 官方参考在哪?core.mp.net/bots——参数级权威来源。

相关文章

本 FAQ 概括的行为可能变化。请始终在官方方法页确认当前状态。

这是否解答了您的问题?