我有一个网络应用程序机器人,我想远程控制它,以便少数人可以测试它。我正在使用 Bot Framework Emulator 在本地对其进行测试,并且效果很好,但是我完全无法让 ngrok 托管它。
(实际上,我使用 ...azurewebsites.net/api/messages 链接我的应用在 Azure 中与另一个机器人进行了连接,但我不能使用这个,所以我正在尝试使用 ngrok 提供给我的链接 - 两者我管理的机器人和这个机器人都托管在 Azure 中,但我不知道如何使其可用于远程访问)
我正在采取的步骤:
在 Visual Studio 中部署应用程序,使其在 localhost:3979 上运行;
使用 ngrok 在外部打开端口
ngrok 3979 http -host-header=rewrite localhost:3979
;获取 ngrok 为我提供的转发 URL 之一,例如
https://3d609207.ngrok.io
在 Bot Framework Emulator 中插入以前的 URL;
单击连接。
在 ngrok 和 Bot Framework Emulator 中都返回 me 405 Method Not Allowed
。
我尝试访问我在 Bot Framework Emulator 中插入的链接,我通常会看到在本地托管我的机器人时会看到的页面:
在此处描述您的机器人以及您的使用条款等。
访问 Bot Framework 以注册您的机器人。注册时,请记住将机器人的端点设置为
但我无法在 Bot Framework Emulator 中发送或接收消息。
此外,ngrok 在 HTTP 请求标题下打印:
HTTP Requests
-------------
POST / 405 Method Not Allowed
GET /favicon.ico 200 OK
GET / 200 OK
我的 MSAppID 和密码在 web.config 中配置正确,编译不会出错,所以我怀疑它是代码上的东西(除非代码中有一些配置阻止了这个机器人被远程访问,但我有不知道)。
我非常感谢在这个问题上的任何帮助。谢谢你的时间。