首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >WebChat -直接线路语音适配器错误: WebSocket连接失败,错误为400

WebChat -直接线路语音适配器错误: WebSocket连接失败,错误为400
EN

Stack Overflow用户
提问于 2021-01-31 20:35:28
回答 1查看 206关注 0票数 2

我在Azure上运行了Bot服务。我正在尝试语音启用机器人,但我一直收到Websocket连接错误。

我让echo-bot在服务器端运行。我遵循了这个tutorial,并在Azure门户网站上为机器人添加了一个具有认知语音服务的Direct Line语音频道。作为客户端,我使用了示例Direct Line Speech sample。下面是完整的代码:

代码语言:javascript
复制
<!DOCTYPE html>
<html lang="en-US">
  <head>
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1" />
    <meta name="theme-color" content="#000000" />
    <script
      crossorigin="anonymous"
      src="https://cdn.botframework.com/botframework-webchat/latest/webchat.js"></script>
    <title>Speech Test</title>
          <style>
      html,
      body {
        height: 100%;
      }

      body {
        margin: 0;
      }

      #webchat {
        height: 100%;
        width: 100%;
      }
    </style>
  </head>
  <body >
    <div id="root"></div>
    <div id="webchat" role="main"></div>
    <script>
      (async function () {
        async function fetchCredentials(){
          const res = await fetch(
            "https://westeurope.api.cognitive.microsoft.com/sts/v1.0/issueToken",
            {
              method: "POST",
              headers: {
                "Ocp-Apim-Subscription-Key": `XXXXXXXXX`,
              },
            }
          );
          if (!res.ok) {
            throw new Error("Failed to fetch authorization token and region.");
          }
          return { authorizationToken: await res.text(), region: "westeurope" };
        };
        const adapters = await window.WebChat.createDirectLineSpeechAdapters({
          fetchCredentials
        });

        window.WebChat.renderWebChat(
          {
          ...adapters
          },
          document.getElementById("webchat")
        );
        document.querySelector("#webchat > *").focus();
      })().catch((err) => err);
    </script>
  </body>
</html>

Websocket失败的原因可能是什么?我很感谢你的帮助。

版本

代码语言:javascript
复制
<meta name="botframework-directlinespeech:version" content="4.11.0">
<meta name="botframework-webchat:bundle:variant" content="full">
<meta name="botframework-webchat:bundle:version" content="4.11.0">
<meta name="botframework-webchat:core:version" content="4.11.0">
<meta name="botframework-webchat:ui:version" content="4.11.0">

错误

代码语言:javascript
复制
Firefox can’t establish a connection to the server at wss://westeurope.convai.speech.microsoft.com/api/v3?language=en-US&format=simple&Authorization=<XXXXXXXXXXXX>&X-ConnectionId=7047B4CE339E4DFDA5435664DEF8CE58
EN

回答 1

Stack Overflow用户

发布于 2021-02-02 08:38:35

能否请您检查以下故障排除指南是否有效?https://docs.microsoft.com/en-us/azure/cognitive-services/Speech-Service/troubleshooting#error-websocket-upgrade-failed-with-an-authentication-error-403

它显示错误: HTTP 400错误请求是一个错误,通常在请求正文包含无效音频数据时发生。仅支持WAV格式。另外,检查请求的头部,确保为Content-Type和Content-Length指定了适当的值。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65979144

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档