React-NativeのWebsocket接続を介してWatson TTS APIに接続しようとしています。接続が確立され、サーバーにメッセージを送信できますが、サーバーから戻ってくるデータは、常に空です。React-Native Websocketイベントデータプロパティがありません
event.dataプロパティが完全に欠落しているようです。反応ネイティブのコンソールにログオンすると、結果として「未定義」になります。ブラウザで同じコードを使用すると、すべてが完全に機能します。
私は0.33ネイティブ反応し、ここに私のコードです使用しています:
function connectTTS(token) {
var voice = "de-DE_BirgitVoice";
var format = 'audio/basic';
var token = token;
var wsURI = "wss://stream.watsonplatform.net/text-to-speech/api/v1/synthesize?voice=" + voice + "&watson-token=" + token;
function onOpen(evt) {
var message = {
text: "Hello world.",
accept: format
};
// note: the Text to Speech service currently only accepts a single message per WebSocket connection
websocket.send(JSON.stringify(message));
}
var audioParts = [];
var finalAudio;
function onMessage(evt) {
console.log(evt.data);
if (typeof evt.data === 'string') {
console.log('Received string message: ', evt.data)
} else {
console.log('Received ' + evt.data.size + ' binary bytes', evt.data.type);
audioParts.push(evt.data);
}
}
function onClose(evt) {
console.log('WebSocket closed', evt.code, evt.reason);
console.log(audioParts);
console.log(format);
finalAudio = new Blob(audioParts, {type: format});
console.log('final audio: ', finalAudio);
}
function onError(evt) {
console.log('WebSocket error', evt);
}
var websocket = new WebSocket(wsURI);
websocket.onopen = onOpen;
websocket.onclose = onClose;
websocket.onmessage = onMessage;
websocket.onerror = onError;
}
より反応するネイティブ/のWebSocketの経験を持つ誰かが解決策を見つける私を助けることができればそれは素晴らしいことです。ありがとう。