web-dev-qa-db-ja.com

Node.js socket.ioサーバーからブラウザークライアントにバイナリデータを送信する方法

私はSocket.IOのドキュメント全体を調べてきましたが、そこにあると約束していても、サーバー/クライアント間でバイナリデータを送信する方法の簡単で最小限の例を見つけることができません。

どうやってやるの?

16
MaiaVictor

それは実際にはドキュメントにあります。 Socket.ioの現在のドキュメントは Socket.emit の下で述べています:

[...]文字列名で識別されるソケットにイベントを発行します。他のパラメータを含めることができます。バッファを含むすべてのデータ構造がサポートされています[...]

したがって、バッファを送信できる場合は、バイナリデータを送信できます。データを Buffer オブジェクトにパックするだけです。

Socket.io Binary Support および Sbining and Receiving Binary を参照することをお勧めします。

13
Edwin Dalorzo

Socket.io 1.0以降、バイナリデータを送信することが可能です。 http://socket.io/blog/introducing-socket-io-1-0/

公式ドキュメントでは、バイナリデータの送受信方法が明確にされていません。唯一のドキュメントは次のとおりです。

var socket = new WebSocket('ws://localhost');
socket.binaryType = 'arraybuffer';
socket.send(new ArrayBuffer);

この回答をご覧になることをお勧めします。サーバーとクライアントのコード実装の基本的な例を見つけることができます(javascriptとJavaも)):

socket.ioでバイナリデータを送信する方法

良い点は、Androidでも動作することです。 (ご希望の場合)

乾杯

3
chelo_c