我已经成功使用Azure文本到语音API几个月了,格式如下:
<speak version='1.0' xmlns='w3.org/2001/10/synthesis' xml:lang='en-US'><voice name='Microsoft Server Speech Text to Speech Voice (fi-FI, HeidiRUS)'>My text</voice></speak>
但突然这个请求又回来了:
HTTP/1.1 400错误请求
我们几个月来一直成功使用同一个请求(当然使用不同的短语),但就在几周前,同一个请求开始返回此错误。我没有获得任何其他信息,因此我不知道在哪里查找。Azure文档显示:
必需参数缺失、为空或null。或者,传递给必需参数或可选参数的值无效。常见问题是标头过长。
我也试着通过添加性别和语言以及用双引号替换单引号来使请求更具体,但没有用途:
<speak version="1.0" xmlns="w3.org/2001/10/synthesis" xml:lang="fi-FI" xml:gender="Female"><voice name="Microsoft Server Speech Text to Speech Voice (fi-FI, HeidiRUS)">Text.</voice></speak>
API中有什么变化吗?或者我的请求中缺少了什么?
2条答案
按热度按时间y0u0uwnf1#
当我发送以下有效负载时,我得到了包含正确内容的200 OK:
下面是我的C#代码发送这个:
我在我们的负载上看到的唯一区别是
xmlns
值,其中我有一个完整的url(带有http://),而你的没有。错误可能在其他地方:当查询端点时你确信你正在验证你自己吗?
qq24tv8q2#
我们还突然收到了400错误,在我们的示例中,我们没有使用
<![CDATA[ your text here ]]>
在我们的代码中这样做之后,我们不再得到用户报告的400个错误。