繁体   English   中英

将音频流式传输到 wit.ai 时 esp32 上的 HTTP 错误

[英]HTTP error on esp32 while streaming audio to wit.ai

我有一个问题,我认为是由我的 HTTP 请求的语法引起的。

我正在尝试将音频流式传输到 wit.ai API 以进行语音识别,并且我正在connection reset by peer400 Bad request错误。

这是我开始请求的代码:

void startChunkedRequest(SSLClient client, String server, String endpoint)
{
  client.print(String("POST https://") + server + endpoint + " HTTP/1.1\r\n");
  client.print(String("Host: ") + server + "\r\n");
  client.print("Authorization: Bearer "TOKEN"\r\n");
  client.print("Content-Type: audio/raw;encoding=signed-integer;bits=8;rate=50000;endian=little\r\n");
  client.print("Transfer-Encoding: chunked\r\n");
  client.print("\r\n");
}

这是我发送缓冲区的代码:

void chunkedRequest(SSLClient client, uint8_t *buffer, size_t len)
{
   client.print(String(len, HEX).c_str());
   client.print("\r\n");
   client.write(buffer, len);
   client.print("\r\n");
}

一旦调用了chunkedRequest函数,错误就来了。 如果您知道解决方案或可能导致问题的原因,请告诉我。

您的POST行错误地指定了端点。 它不应该包含协议或服务器,只包含路径。 试试这个:

  client.print(endpoint + " HTTP/1.1\r\n");

并确保endpoint/开头。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM