Watson 文本转语音:凭证 URL
Watson Text to Speech: Credentials URL
我正在使用 IBM Watson "Text to Speech",当我使用它时,它会要求我提供凭据。我的代码(jQuery)是:
var url = "https://stream.watsonplatform.net/text-to-speech/api/v1/synthesize?voice=es-ES_EnriqueVoice&accept=audio/wav&text=" + text;
$("#speech").attr("src", url)[0].play();
我可以将凭据放在 URL 中吗?如果是这样,如何?感谢您的支持!
我认为 Watson TTS 支持 CORS,所以你应该没问题。然后认证分为两部分。首先使用 APIKey 获取令牌,然后将令牌作为 'Bearer' 令牌用作 url 的一部分。但是,文档说您可以将 APIKey 作为基本 header - https://www.ibm.com/watson/developercloud/text-to-speech/api/v1/curl.html?curl#authentication
直接传递
所以如果您的密钥是 123456
那么
var url = "https://apikey:123456@stream.watsonplatform.net/text-to-speech/api/v1/synthesize?voice=es-ES_EnriqueVoice&accept=audio/wav&text=" + 文本;
然而,这确实意味着您在浏览器应用程序中明文传递您的凭据供任何人使用。所以在本地测试系统之外完全没用。您最好构建一个服务器端应用程序,该应用程序要么为您提供一个带有到期时间的令牌,要么进行语音合成和 returns 生成的音频文件。
我正在使用 IBM Watson "Text to Speech",当我使用它时,它会要求我提供凭据。我的代码(jQuery)是:
var url = "https://stream.watsonplatform.net/text-to-speech/api/v1/synthesize?voice=es-ES_EnriqueVoice&accept=audio/wav&text=" + text;
$("#speech").attr("src", url)[0].play();
我可以将凭据放在 URL 中吗?如果是这样,如何?感谢您的支持!
我认为 Watson TTS 支持 CORS,所以你应该没问题。然后认证分为两部分。首先使用 APIKey 获取令牌,然后将令牌作为 'Bearer' 令牌用作 url 的一部分。但是,文档说您可以将 APIKey 作为基本 header - https://www.ibm.com/watson/developercloud/text-to-speech/api/v1/curl.html?curl#authentication
直接传递所以如果您的密钥是 123456
那么
var url = "https://apikey:123456@stream.watsonplatform.net/text-to-speech/api/v1/synthesize?voice=es-ES_EnriqueVoice&accept=audio/wav&text=" + 文本;
然而,这确实意味着您在浏览器应用程序中明文传递您的凭据供任何人使用。所以在本地测试系统之外完全没用。您最好构建一个服务器端应用程序,该应用程序要么为您提供一个带有到期时间的令牌,要么进行语音合成和 returns 生成的音频文件。