尝试按照quick start for cloud speed接口操作,在命令提示符下执行curl命令后,出现错误,描述如下:
{
"error": {
"code": 400,
"message": "RecognitionAudio not set.",
"status": "INVALID_ARGUMENT"
}
}为什么不在接口中设置RecognitionAudio?使用的sync-request.json与快速入门中的相同:
{
"config": {
"encoding":"FLAC",
"sampleRateHertz": 16000,
"languageCode": "en-US",
"enableWordTimeOffsets": false
},
"audio": {
"uri":"gs://cloud-samples-tests/speech/brooklyn.flac"
}
}发布于 2017-09-20 02:17:37
我不确定您到底做错了什么,但我能够按照文档中的原样使用请求,而不会出现问题。
您是否获得了启用了speech API的Google Cloud项目的访问令牌?以下命令会生成可用作持有者的访问令牌:
gcloud auth application-default print-access-token将以下代码放入脚本文件(req.sh)对我很有帮助
curl -s -H "Content-Type: application/json" \
-H "Authorization: Bearer <output>" \
https://speech.googleapis.com/v1/speech:recognize \
-d @sync-request.json然后,我将print-access-token的输出与脚本结合使用。
发布于 2017-10-10 08:22:29
我遇到了完全相同的问题,我在-d值中添加引号解决了这个问题,如下所示:
curl -s -H "Content-Type: application/json" \
-H "Authorization: Bearer <your-access-token>" \
https://speech.googleapis.com/v1/speech:recognize \
-d "@sync-request.json"发布于 2017-10-23 09:16:08
我收到这个错误是因为我没有在与sync-request.json文件相同的目录下的cli中运行该命令。
一旦我更改了目录,我就将文档中的命令与我的访问令牌一起使用,它工作得很好。
https://stackoverflow.com/questions/46156500
复制相似问题