【问题标题】:Chat bot framework 401 unauthorized issue聊天机器人框架 401 未经授权的问题
【发布时间】:2018-03-22 07:51:10
【问题描述】:

当我在本地 iis 中部署机器人并使用 ngrok https url 在 azure 中注册机器人通道时遇到 401 问题。

我遵循的步骤:

  1. 在 IIS 中使用端口 1214 部署机器人。
  2. 使用 ngrok 为端口 1214 创建了 https

  3. 已在 Azure 门户中注册频道,并以 ngrok url 形式给出端点。

  4. 我尝试使用浏览器中的 iframe url 访问 WEB 聊天并收到 401 错误。我在本地服务器和 azure 门户的 web.config 中验证了 MS appid 和密码,两者都是相同的。

  5. 我尝试使用带有 ngrok ulr 的模拟器访问 iis bot 服务器,并给出空的 ms appid 和密码,并将 web.config 更改为空的 appid、密码,它工作正常。

请帮忙。

已编辑:

我已经调试了botconnector(github)源代码并发现了问题,但不知道如何解决。

Token expire 即使是第一次聊天,令牌也会在短时间内过期,但屏幕截图中的时间差显示太长(validto 和 current)。那么可能是什么问题?正如我所说,我的机器人正在我的本地服务器(印度位置)中运行,并且我将 bot 通道与端点注册为在我的本地服务器中运行的 ngrok url。 (请参考上面的详细信息。)。

【问题讨论】:

    标签: bots


    【解决方案1】:

    试试troubleshooting 你的机器人。

    如果您没有收到成功响应,请重置您的应用密码。

    【讨论】:

    • 我用新的发现编辑了我的问题,但无法修复它。
    • @Velmurugan - 使用 ngrok 不会成为问题。如果您在 web.config 文件中提供了 AppId 和 AppPassword,如果您不在模拟器中提供值,机器人将如何响应? ://
    • 我的 web.config 在我的测试过程中是空的 appid 和密码。有用。问题是令牌过期。
    【解决方案2】:

    在尝试从机器人模拟器访问部署在 Azure 中的机器人时,我也遇到了此错误“错误:未经授权。传递令牌的 AppId 无效”。解决方案是转到机器人注册>访问控制>我将自己添加为机器人的所有者。它开始在模拟器中为我工作。我给了 http://localhost:port 并没有在模拟器中提供 MicrosoftAppId 和 MicrosoftAppPassword ,我能够在本地调试机器人。

    【讨论】:

      【解决方案3】:

      我解决了这个问题。这是由于我的系统中的时区设置错误。

      【讨论】:

      • 您好,您能解释一下您在时区方面遇到的具体问题吗?以及您是如何更改本地时区以使其开始工作的?
      • 我得到完全相同的错误,但提供的答案不清楚
      猜你喜欢
      • 1970-01-01
      • 2018-08-27
      • 2016-12-14
      • 1970-01-01
      • 2017-03-20
      • 2012-10-02
      • 1970-01-01
      • 2017-03-02
      • 1970-01-01
      相关资源
      最近更新 更多