Azure Bot Service Direct Line API v3.0在开始对话时不断抛出403错误

Waq*_*fan 4 azure botframework direct-line-botframework

我一直在尝试将Azure Direct Line API v3.0用于机器人.然而,似乎我不再启用对话,因为我在APi呼叫上收到403消息.这是我的电话:

$.ajax({
        url: "https://directline.botframework.com/v3/directline/tokens/generate",
        method: "POST",
        crossDomain: true,
        cache: false,
        beforeSend: function (xhr) {
            /* Authorization header */
            xhr.setRequestHeader ("Authorization", "Basic " + btoa("Bearer:GI3UQr2GYoA.cwA.wHo.h1AyNQKXSESWZGFrf-yf_Cm3XwDRy38Yn-xzgUton-E"));
        },
        success: function (data) {

        },
        error: function (jqXHR, textStatus, errorThrown) {

        }
    });
Run Code Online (Sandbox Code Playgroud)

请注意,这曾经是几天前的工作.我有通过此API创建的活动的几个活动记录.

但是现在我甚至在获取令牌时不断收到此错误消息:

{
  "error": {
    "code": "BadArgument",
    "message": "Missing token or secret"
  }
}
Run Code Online (Sandbox Code Playgroud)

我正在使用免费订阅计划,我还有7天时间.此外,我已检查订阅状态,其活动状态.我也有超过140美元的信贷.

请让我知道我做错了什么,为什么它会突然停止工作?

提前致谢.

Nic*_*s R 6

阅读MS提供的有关身份验证的文档:https://docs.microsoft.com/en-us/azure/bot-service/rest-api/bot-framework-rest-direct-line-3-0-authentication?视图=天青-机器人服务-3.0

它说:

Authorization: Bearer SECRET_OR_TOKEN
Run Code Online (Sandbox Code Playgroud)

所以改变这一行:

xhr.setRequestHeader ("Authorization", "Basic " + btoa("Bearer:GI3UQr2GYoA.cwA.wHo.h1AyNQKXSESWZGFrf-yf_Cm3XwDRy38Yn-xzgUton-E"));
Run Code Online (Sandbox Code Playgroud)

至:

xhr.setRequestHeader ("Authorization", "Bearer GI3UQr2GYoA.cwA.wHo.h1AyNQKXSESWZGFrf-yf_Cm3XwDRy38Yn-xzgUton-E");
Run Code Online (Sandbox Code Playgroud)

它工作正常!

在此输入图像描述