我正在尝试在本地主机上测试botframework服务器。 我遵循了https://docs.microsoft.com/en-us/azure/bot-service/bot-service-troubleshoot-authentication-problems?view=azure-bot-service-4.0#step-3-enable-security-and-test-on-localhost-中的步骤。
首先,我使用MicrosoftAppId更改了应用程序配置,并且MicrosoftAppPassword通过了https://docs.microsoft.com/en-us/azure/bot-service/bot-service-troubleshoot-authentication-problems?view=azure-bot-service-4.0#step-2的测试。 然后,我在本地主机上启动了我的机器人,并且网页显示它正在http://localhost:3979/上运行。 但是,当我尝试在Bot Framework Emulator上对其进行测试时,它返回400 directline.postActivity,并显示消息“刷新访问令牌失败,状态码为401”。
屏幕截图位于https://i.loli.net/2019/06/06/5cf88ea120b9973175.png上。
我的botframework版本是3.13.1。 我的Bot Framework Emulator版本是4.3.3。
我该怎么做才能解决此问题? 感谢您的帮助。
{
"error": {
"code": "ServiceError",
"message": "Refresh access token failed with status code: 401"
}
}
[11:42:22]POST 201 directline.start Conversation
[11:42:22]Emulator listening on http://localhost:49840
[11:42:22]ngrok listening on https://082d32c4.ngrok.io
[11:42:22]ngrok traffic inspector:http://127.0.0.1:4040
[11:42:22]Will bypass ngrok for local addresses
[11:42:25]->message hi
[11:42:26]POST 400 directline.postActivity
答案 0 :(得分:0)
"Refresh access token failed with status code: 401"
错误几乎总是与appId / appPass有关。
请验证:
注意:如果您没有保存密码,只需单击“新客户端密码”以生成一个新密码。
web.config
中设置了正确的appId / appPass 您还应该upgrade Emulator to the latest release。早在4.3.3之前,模拟器中就有一个错误导致了此错误,但是我猜V3机器人可能会出现类似的情况,因为我们很少使用它们。
如果这是新机器人,那么您实际上应该使用V4。 V3将于2019年7月1日弃用。现有的bot可以使用,但用户将无法再创建它们。