Microsoft Bot Framework - 使用 ngrok 在本地构建和调试客户端

Microsoft Bot Framework - Building and debugging a client locally using ngrok

我使用 Microsoft Bot Framework 构建了一个简单的机器人。我现在想构建一个客户端以嵌入到我的移动应用程序中。当使用直线 API 向我的机器人发送消息时,我收到 500 错误,这不会通过其他渠道发生。

为了调试这个,我尝试 运行 本地主机上的 bot 并使用 ngrok 公开端口,以便可以通过直接线路 API 访问它。机器人 运行 在本地运行良好,并且在向本地主机发出请求时可以正常处理请求。但是,当向 ngrok 在公开端口时创建的临时 url 发出相同的请求时,我收到 400 Bad Request 错误。

有没有人运行解决这个问题或对如何解决它有一些建议?

我现在已经解决了这个问题。显然,当主机 header 与预期不符时,机器人不喜欢它。为了解决这个问题,我使用以下 ngrok 命令公开了端口:

ngrok http [port] -host-header="localhost:[port]"

其中 [port] 是机器人 运行 所在的端口。