Node.js BotBuilder卡片轮播机器人无响应,报无效令牌错误
解决Bot模拟器"invalid token. Requested by unexpected app ID"错误
这个错误我之前调试BotBuilder项目时也碰到过,本质是Bot框架的身份验证机制发现请求携带的App ID和你代码里配置的不匹配,直接拒绝处理请求了。给你几个针对性的解决办法:
核对App ID与密码的一致性
仔细检查代码里的appId字符串,和你在Bot模拟器中输入的Microsoft App ID是不是完全一致——包括大小写、连字符,哪怕少一个字符或者多打个空格都会触发这个错误。如果代码里配置了appPassword,模拟器里的密码也要严格对应,不能只填ID漏了密码。本地调试时暂时关闭身份验证(开发阶段推荐)
如果你只是本地测试,完全可以跳过身份验证来快速排查问题。修改你的ChatConnector初始化代码:var connector = new builder.ChatConnector({ // 注释掉或删除appId和appPassword配置 // appId: "ecdd3610-37d3-462b-b13...", // appPassword: "你的密码" });同时把模拟器里的App ID和密码清空,重启模拟器后再发送消息,Bot就能正常响应了。
检查模拟器的设置细节
点击模拟器右上角的齿轮图标打开设置面板,确认里面的App ID和密码没有输入错误。如果之前填过错误信息,建议先清空所有字段,重新输入正确内容后再重启模拟器。更新BotBuilder包到稳定版
旧版本的BotBuilder可能和新版模拟器存在兼容性问题,打开终端执行npm update botbuilder,把依赖包更新到最新稳定版,再重新运行项目试试。
内容的提问来源于stack exchange,提问作者Leo
相关产品推荐
相关产品推荐

