Azure Composer部署Node.js空聊天机器人遇HTTP NotFound错误求助
以下是针对该问题的具体排查步骤:
验证Bot资源的Messaging Endpoint配置:
登录Azure门户,找到目标Bot资源,进入「设置」页面,确认Messaging Endpoint是否为https://<你的机器人应用服务名称>.azurewebsites.net/api/messages。注意检查域名是否与部署的App Service完全匹配,路径必须包含/api/messages——这是Bot Framework接收消息的固定端点,缺失或错误会直接触发NotFound错误。检查App Service运行状态与日志:
进入对应的App Service资源,查看「概述」页面的运行状态是否为「运行中」,若处于停止或异常状态,先启动服务再测试。同时打开「日志流」,排查是否存在启动失败报错(如依赖包缺失、端口配置冲突、Node.js版本不兼容等)。核对Composer发布配置:
打开Azure Composer加载目标机器人项目,查看发布配置中的「App Service名称」「资源组」是否与Azure门户中创建的资源完全一致。尝试重新发布,确保发布过程无报错,发布日志显示「成功部署」。确认Bot注册凭据:
在Bot资源的「设置」页面,核对Microsoft App ID和密码是否与Composer项目中配置的一致。若密码过期或凭据不匹配,会导致Bot无法正常连接Bot Framework服务,引发请求失败。本地机器人测试:
在Composer中启动本地机器人,使用内置Web Chat测试是否能正常交互。如果本地运行正常,说明问题出在部署环节;如果本地也出现异常,优先排查机器人对话逻辑或项目依赖配置。排查网络与防火墙规则:
检查App Service的「网络」配置,确认是否允许公共访问,是否设置了IP限制规则导致Web Chat无法访问。同时确保Bot Framework服务能正常访问你的App Service,出站规则未阻止相关请求。
内容的提问来源于stack exchange,提问作者Sasirekha MSVL

