Javascript 谷歌云文本到语音REST获取错误
我正在尝试从基于javascript的浏览器应用程序调用Google云文本到语音API。 我的REST呼叫收到以下错误响应:Javascript 谷歌云文本到语音REST获取错误,javascript,google-cloud-platform,fetch,google-text-to-speech,Javascript,Google Cloud Platform,Fetch,Google Text To Speech,我正在尝试从基于javascript的浏览器应用程序调用Google云文本到语音API。 我的REST呼叫收到以下错误响应: error: Object { code: 400, message: "Empty language code.", status: "INVALID_ARGUMENT" } 根据文档,语言代码是正确的。。。如果有人能给我指出正确的方向,我可能会做错什么? 这是我的密码: const config = { metho
error: Object { code: 400, message: "Empty language code.", status: "INVALID_ARGUMENT" }
根据文档,语言代码是正确的。。。如果有人能给我指出正确的方向,我可能会做错什么?
这是我的密码:
const config = {
method: 'POST',
async: true,
crossDomain: true,
url: "https://texttospeech.googleapis.com/v1beta1/text:synthesize?fields=audioContent&key="+API_KEY,
headers: {
"x-goog-api-key": API_KEY,
"Content-Type": "application/json; charset=utf-8",
"cache-control": "no-cache"
},
processData: false,
data: {
'input':{
'text':'This is a text to speak'
},
'voice':{
'languageCode':'en-US',
'name':'en-US-Standard-B'
},
'audioConfig':{
'audioEncoding':'MP3'
}
}
}
let response = await window.fetch(config.url, config)
let data = await response.json()
console.log("got buffer", data)
您的请求没有在邮件正文中发送任何内容。看起来你可能把
window.fetch
的参数和jQuery.ajax
混淆了?嗯,没错。我已根据将其从data
更改为body
,但现在我收到错误:error Object{code:400,消息:“接收到无效的JSON负载。意外的令牌。\n[对象对象]\n^”,状态:“无效参数”}code 400消息“接收到无效的JSON负载。意外的令牌。\n[对象]\n^状态带有窗口的“无效参数”
。获取正文
不会为您从JS对象转换为字符串。请尝试body:JSON.stringify({…})
谢谢您的帮助!这为我指明了正确的方向