A partire da socket.io 1.0 è possibile inviare i dati binari. http://socket.io/blog/introducing-socket-io-1-0/
In ogni caso il modo di inviare e ricevere dati binari non è chiaro nella documentazione ufficiale. L'unica documentazione è:
var socket = new WebSocket('ws://localhost');
socket.binaryType = 'arraybuffer';
socket.send(new ArrayBuffer);
vi consiglio di dare un'occhiata a questa risposta, dove si possono trovare esempio di base con l'attuazione del codice per server e client (JavaScript e Java troppo):
How to send binary data with socket.io?
La parte buona è che funziona anche su Android! (se lo si desidera)
Acclamazioni
fonte
2015-12-05 20:28:50
[qui] (http://stackoverflow.com/a/24124966/2600208) è un esempio di come inviare un'immagine come un buffer dal server e renderlo in un HTML5 Canvas su un client. – Curious
@Viclib Hai fatto questo? si prega di condividere..!!! –
Ah, ho, ho dimenticato come a questo punto, mi dispiace per non aver aggiornato. Ma per quanto mi ricordo, tutto ciò che devi fare è ottenere un buffer da un oggetto Float32Array (o simile) (qualcosa del genere: 'myData = new Float32Array ([1,2,3,4]). Buffer;' e inviandolo tramite 'socket.io', ovvero,' socket.emit ("foo", myData) '. Lo considera automaticamente come dati binari, quindi, dall'altra parte, è necessario convertirlo di nuovo:' socket.on ("foo", function (data) {data = new Float32Array (data);}) '. L'ho scritto per memoria, però, ma ricordo che c'era un esempio sul post del blog sul rilascio di' socket. io' 1.0. – MaiaVictor