You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Telegram机器人点击Next按钮触发GrammyError 400错误求助

解决Telegram Bot交互菜单点击Next无响应的问题

问题原因

报错信息message is not modified已经明确指出:点击Next按钮时,你尝试调用editMessageText编辑消息,但传入的文本内容和按钮markup与当前消息完全一致,Telegram API禁止这种无意义的重复编辑操作。

解决方案

检查Next按钮的回调逻辑,确保点击后切换到不同的菜单内容和按钮配置:

  1. 定位代码中处理next回调的部分(对应Next按钮的触发逻辑)
  2. 确认回调函数内的editMessageText参数是第二个菜单的文本和markup,而非当前菜单的内容

错误代码示例(导致无响应):

bot.callbackQuery('next', async (ctx) => {
  // 错误:重复使用当前菜单的内容和markup
  await ctx.editMessageText(firstMenu, { reply_markup: firstMenuMarkup });
});

修正后的代码:

bot.callbackQuery('next', async (ctx) => {
  // 正确:切换到第二个菜单的内容和markup
  await ctx.editMessageText(secondMenu, { reply_markup: secondMenuMarkup });
});

验证逻辑

确保每个按钮的回调都对应唯一的消息内容+markup组合,避免向Telegram API提交完全相同的编辑请求。

内容的提问来源于stack exchange,提问作者veet

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.26 01:15:06