NextJS接口调用Telegram发消息遇ETELEGRAM:404错误求助
解决Telegram Bot API 404 Not Found错误的方案
- 检查Bot Token格式
正确的Bot Token是从@BotFather获取的数字ID:密钥字符串格式,比如123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11,你当前用的-23233223完全不符合要求,必须替换成正确的Token。 - 修正Chat ID
Chat ID是纯数字(个人用户为正数,群组/频道可能是负数),你写的34323:efwefwewef格式错误。获取方法:给Bot发一条消息,然后访问https://api.telegram.org/bot<你的正确Token>/getUpdates,在返回的JSON里找到message.chat.id的值。 - 处理网络访问限制
如果部署环境在国内,必须配置代理才能访问Telegram API,创建Bot实例时可以添加代理配置:const bot = new TelegramBot(botToken, { polling: false, request: { proxy: 'http://你的代理地址:端口' } }); - 确认Bot权限
- 若要给群组发消息,确保Bot已加入该群组且拥有发消息权限;
- 若给个人用户发消息,确保用户已经和Bot发起过对话(Bot无法主动给未交互过的用户发消息)。
- 优化错误排查
可以在catch块中打印完整错误信息,便于定位问题:catch (error: any) { console.error('Telegram API 错误详情:', error); res.status(500).json({ error: "发送消息失败", details: error.response?.body || error.message }); }
内容的提问来源于stack exchange,提问作者John Chimaobi
相关产品推荐
相关产品推荐

