BOT模拟器在部署后显示未经授权的错误



我是Microsoft BOT开发的初学者。我试图创建一个BOT应用程序,向连接的用户发送主动消息。我得到了一个GitHub的repo源代码。

我已经在Azure门户中创建了一个应用程序,并将这些凭据用于本地开发环境,并使用Bot模拟器连接Bot应用程序。在本地环境中一切都很好,我可以将BOT模拟器与本地开发环境连接起来。在部署(部署文档URL)之后,我无法通过模拟器连接BOT,它总是显示一条消息,不能发布未经授权的活动

我已经复制了AppID和密码到。env的文件。这个AppID和Password在本地开发中工作得很好。部署后连接BOT是否需要任何额外的配置?

在本地模拟器中,它也会在没有AppID和Password的情况下运行,除非您正在与任何外部资源(例如LUIS, QnA服务等)进行通信。

确保AppID &通过运行以下CURL命令,您提供的密码是正确的(用您的AppId &秘密)。如果正确,您将看到令牌成功生成。

curl -k -X POST https://login.microsoftonline.com/botframework.com/oauth2/v2.0/token -d "grant_type=client_credentials&client_id=APP_ID&client_secret=APP_PASSWORD&scope=https%3A%2F%2Fapi.botframework.com%2F.default"

https://learn.microsoft.com/en - us/azure/bot service/bot -服务-解决-认证- problems?view=azure bot -服务- 4.0,标签= csharp #步骤2

如果secret不正确,按照此命令重新生成。

如果以上工作正常,并且您看到令牌正在生成,并且如果您的Bot代码部署在Azure上,则还可以在应用程序服务配置中添加Bot AppID和Password。像这样-

{
"name": "MicrosoftAppId",
"value": "xxxx-xxxx-xxxx-xxxx-xxxx",
"slotSetting": false
},
{
"name": "MicrosoftAppPassword",
"value": "xxxx",
"slotSetting": false
},

如果你在密钥库中存储Bot秘密,你也可以从那里检索。https://learn.microsoft.com/en us/azure/bot service/bot - builder authentication?view=azure bot -服务- 4.0,标签= csharp % 2 caadv2 # azure-key-vault

最新更新