Botframework 在将本地bot连接到本地WebChat客户端时获取403(但可与Emulator一起使用)
我正在尝试将我的本地webchat客户端连接到我的本地bot,但它抛出了一个403。我尝试添加Botframework 在将本地bot连接到本地WebChat客户端时获取403(但可与Emulator一起使用),botframework,ngrok,direct-line-botframework,web-chat,Botframework,Ngrok,Direct Line Botframework,Web Chat,我正在尝试将我的本地webchat客户端连接到我的本地bot,但它抛出了一个403。我尝试添加localhost:3000(我的webchat端口)作为可信源,但仍然没有帮助。但是,如果我使用emulator或postman(通过Directline连接的令牌生成部分),它就可以正常工作 以下是我所做的一切: 启动我的本地机器人,并使用ngrok将其映射到internet地址 将消息传递端点更改为https://xxxxx.ngrok.io/api/messages 配置了一个directli
localhost:3000
(我的webchat端口)作为可信源,但仍然没有帮助。但是,如果我使用emulator或postman(通过Directline连接的令牌生成部分),它就可以正常工作
以下是我所做的一切:
- 启动我的本地机器人,并使用ngrok将其映射到internet地址
- 将消息传递端点更改为
https://xxxxx.ngrok.io/api/messages
- 配置了一个directline频道,获取密钥并在我的react webchat客户端(在端口3000上运行)中使用它,使用
从createDirectLine
建立directline连接,并传递令牌。我使用以下格式访问此API:botframework webchat
当您使用Emulator进行测试时,您使用的是用户名/密码,还是空白?确保在本地运行时在bot中配置了
MicrosoftAppID
和MicrosoftAppPassword
,并且您正在使用NGROK通过频道。我没有使用任何用户名或密码。@dana vOk是空白的,当你通过Azure进行测试时(即使通过ngrok指向你的本地运行的机器人),你必须提供为应用程序/机器人通道注册配置的应用程序ID和密码。我已经尝试过了。它给出了与WebChat相同的上述403错误。它工作的唯一方式是通过模拟器,没有任何信誉。我读了一些文章,上面说我需要离线运行directline才能工作。我会尝试一下,如果有效的话会给你回复。
POST https://directline.botframework.com/v3/directline/tokens/generate
Authorization: Bearer SECRET