私はMozilla Europeのプロジェクトに取り組んでいます。このプロジェクトでは、Worlize(サーバー側)とMozilla(クライアント側)のNode.jsによるWebSocketを使用して、クライアントからサーバーにファイルをアップロードしようとしています。
現在の目標は、ファイルのarraybuffer
をサーバーに送信することです。 arraybufferを作成して送信しても問題ありません。
私のサーバは、arraybuffer
はutf8メッセージであり、バイナリメッセージではないことを伝えています。どのようにWebsocket経由でバイナリとしてarraybufferを送信しますか?
私は何かを誤解していますか?そうでない場合は、どうすれば修正できますか?
クライアント側:
reader = new FileReader();
reader.readAsArrayBuffer(file);
reader.onload = function(e) {
connection.send(e.target.result);
};
サーバー側:
ws.on('message', function(message,flags) {
if (!flags.binary) {
//some code
}
else {
console.log('It\'s a binary');
}
私は、あまりにもBlob
と同じ結果をしてみてください。バイナリ部分は見えません。
これは、Q&Aサイト、である "フォークと参加は、" HTTPを参照してください(ここでは起こるだろうされていません。 //stackoverflow.com/faq)。また、コードを掘り下げるように人々に依頼しないでください。正確に何をしているのかを説明するのに必要な最小限のコードを含めてください。 –
これはしばらく前に尋ねられたことですが、Firefox 11以降を追加して、バイナリのArrayBufferとBlobをサポートしたいと言っていました。 – SpliFF