跳转到主要内容

MiniApp 概览与核心标识:miniapp_id、shortName、entryUrl 与直达链接

MPChat MiniApp 是什么,以及各标识如何配合:miniapp_id、shortName、entryUrl、botUsername,还有固定的直达链接格式。

不要混淆这些标识。miniapp_id 是 MPChat 生成的、带签名的业务 ID;shortName 是每个 Bot 下的链接名;entryUrl 是用户最终打开的页面。三者角色不同。


总览

MPChat MiniApp 是在 MPChat 内打开的 Web 应用。当前阶段聚焦于:打开 MiniApp、暴露签名后的初始化数据、让后端验证用户身份。尚未实现完整 WebApp JavaScript API。

核心标识

名称

来源

用途

miniapp_id

创建 MiniApp 时由 MPChat 生成(形如 ma_...)。

业务 ID;出现在签名后的 initData.miniapp_id。需在后端校验。

shortName

创建时设置的短链名。

与 bot 用户名组合成直达链接。同一 Bot 下唯一。

entryUrl

创建时设置的 H5 入口 URL。

用户打开的页面;在 sendMessage 中作为 web_app.url

botUsername

bot 用户名。

直达链接的第一段路径。

直达链接规则

https://mp.net/{botUsername}/{shortName}

  • 路径中不要带 @

  • shortName 在同一 Bot 下唯一;不同 Bot 可重名。

  • 只传 botUsername 只解析到 Bot、不会选中默认 MiniApp——请带上 shortName

  • 启动参数会放进签名的 initData.start_param;前端读 initDataUnsafe.startParam 做路由。

创建与打开如何衔接

  • 创建 MiniApp(例如 BotFather /newapp);记录 miniapp_idshortNameentryUrl

  • 通过 sendMessage 的 web_app 按钮或直达链接打开。

  • 打开时 MPChat 生成签名的启动上下文;后端用签名的 miniapp_id 确认请求属于哪个 MiniApp。

相关文章

miniapp_id 不是前端定义的页面 ID,也不等于 shortName。始终信任原始 initData 中的签名值,绝不信任前端提交的未签名值。

这是否解答了您的问题?