我正在使用c ++ 11,野兽库和IBM语音文本Web服务。
(进行连接的)websocket接口在进行握手时需要authentication token
作为请求标头。
请参阅Watson文档中的this code,看来我也必须将模型类型(如果需要)传递为请求标头
var IAM_access_token = '{access_token}';
var wsURI = 'wss://stream.watsonplatform.net/speech-to-text/api/v1/recognize'
+ '?access_token=' + IAM_access_token
+ '&model=es-ES_BroadbandModel';
var websocket = new WebSocket(wsURI);
还提到了curl request format来设置“模型”
curl -X POST -u "apikey:{apikey}"
--header "Content-Type: audio/flac"
--data-binary @{path}audio-file.flac
"https://stream.watsonplatform.net/speech-to-text/api/v1/recognize?model=en-US_NarrowbandModel"
有人可以帮助我弄清楚如何在我的websocket中传递“模型”(在c ++ 11中使用野兽)吗?
这是我传递身份验证令牌的方式:
mWebSocket.async_handshake_ex(mHost, "/speech-to-text/api/v1/recognize",
[mToken](request_type& reqHead) {
reqHead.insert(http::field::authorization,mToken);},
bind(&IbmWebsocketSession::send_start, shared_from_this(), placeholders::_1));
答案 0 :(得分:0)
按照@ALanBirtles的建议
在网址中将重新获得的model
放入
mWebSocket.async_handshake_ex(mHost, "/speech-to-text/api/v1/recognize?model=en-US_NarrowbandModel",...
工程