我使用Microsoft Bot Framework构建了一个简单的bot。我现在想构建一个嵌入我的移动应用程序的客户端。当使用Direct Line API向我的机器人发送消息时,我得到500错误,这不会通过其他渠道发生。
要调试这个,我试图在localhost上运行bot并使用ngrok公开端口,以便Direct Line API可以访问它。机器人在本地运行正常,并且当它们被发送到localhost时处理请求。但是,当暴露端口时由ngrok创建的临时URL发出相同的请求时,我收到400 Bad Request错误。
有没有人遇到过这个问题,或者对如何解决这个问题有一些建议?
答案 0 :(得分:2)
我现在已经解决了这个问题。显然,当主机头不符合预期时,机器人不喜欢它。为了解决这个问题,我使用以下ngrok命令暴露了端口:
ngrok http [port] -host-header="localhost:[port]"
其中[port]是机器人运行的端口。