syncrecognize curl request

时间:2016-10-15 01:14:49

标签: curl wget google-cloud-speech

我跟着https://cloud.google.com/speech/docs/getting-started并成功运行了

curl -s -k -H "Content-Type: application/json" \
-H "Authorization: Bearer access_token" \
https://speech.googleapis.com/v1beta1/speech:syncrecognize \
-d @sync-request.json

获得预期的输出。但是,现在我尝试基本上做同样的事情,但对于本地flac文件,所以我反而运行:

curl -s -k -H "Content-Type: audio/x-flac" -H "Authorization: Bearer [my access key]" 
https://speech.googleapis.com/v1beta1/speech:syncrecognize --data-binary @file.flac

我收到了

的回复
{
  "error": {
    "code": 400,
    "message": "Invalid JSON payload received. Unexpected     token.\nfLaC\u0000\u0000\u0000\"\u0004\n^",
    "status": "INVALID_ARGUMENT"
  }
}

谷歌api开发者控制台显示消息,但没有给我更多信息来帮助我。我也试过了

wget --post-file file.flac --header="Content-Type: audio/x-flac; rate=16000" -O - "https://speech.googleapis.com/v1beta1/speech:syncrecognize?key=[my api key]"

我也收到了400 Bad Request错误。

有没有人成功实现了我的拍摄效果?我可以找到的所有示例都是使用api来上传文件或使用一些库,而不是简单的curl或wget请求。

1 个答案:

答案 0 :(得分:0)

您应该尝试引用数据二进制文件,如下所示:

{{1}}

我有同样的问题,这解决了我。