刚开始使用Watson的Voice API。尝试使用其演示文件audio-file.flac。您必须要保证我要从它所在的目录中发布curl命令,并且根据ls -l命令,文件大小为285928字节。
这是我的帖子
curl -X POST -u xxxxxxxxxx-:yyyyyyyy --header "Content-Type: audio/flac" --data-binary "audio-file.flac" "https://stream.watsonplatform.net/speech-to-text/api/v1/recognize"
然后我回来
{“ code_description”:“错误请求”,“ code”:400,“ error”: “流是15个字节,但至少需要100个字节。” }
令人惊奇的是流大小。我的网络连接非常好,无论尝试多少次它都返回15。如果将文件名更改为不正确的名称,它将返回0。那么这15是哪里来的?
任何人都对此有经验吗?
谢谢
答案 0 :(得分:4)
问题在这里:
--data-binary "audio-file.flac"
您正在告诉命令行发送文件名的15个字节作为消息的内容。这就是为什么它失败了。
在文件名前加上@
符号。示例:
--data-binary @audio-file.flac
答案 1 :(得分:0)
除了 Simon O'Doherty 的回应之外,我的第一个问题是我没有设置 @
但在修复后我收到了消息:
“流为 0 字节,但必须至少为 100 字节。”
经过一些研究,我注意到我的错误是我使用的是 \
而不是 /
,所以我改变了它并且它起作用了。
我的最终路线是这样的:
--data-binary @C:/Users/KARIQUE/Desktop/example.mp3
Pd:我的操作系统是 windows