跳至主要內容

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 概括的行為可能變化。請始終在官方方法頁確認當前狀態。

是否回答了您的問題?