要發(fā)送二進(jìn)制數(shù)據(jù),您可以使用WebSocket的send()
方法,并將傳遞一個(gè)ArrayBuffer對(duì)象作為參數(shù)。以下是一個(gè)示例:
// 創(chuàng)建WebSocket連接
const socket = new WebSocket('ws://localhost:8080');
// 當(dāng)連接打開時(shí)發(fā)送二進(jìn)制數(shù)據(jù)
socket.onopen = function() {
const buffer = new ArrayBuffer(8);
const view = new Uint8Array(buffer);
view[0] = 1;
view[1] = 2;
view[2] = 3;
socket.send(buffer);
};
// 當(dāng)接收到消息時(shí)處理二進(jìn)制數(shù)據(jù)
socket.onmessage = function(event) {
const buffer = event.data; // 接收到的二進(jìn)制數(shù)據(jù)
const view = new Uint8Array(buffer);
console.log(view);
};
在這個(gè)例子中,我們創(chuàng)建了一個(gè)WebSocket連接,當(dāng)連接打開時(shí),我們創(chuàng)建了一個(gè)8字節(jié)的ArrayBuffer對(duì)象,并將一些數(shù)據(jù)寫入到ArrayBuffer中。然后,我們使用WebSocket的send()
方法發(fā)送ArrayBuffer對(duì)象。
當(dāng)接收到消息時(shí),我們獲取到的數(shù)據(jù)是一個(gè)ArrayBuffer對(duì)象,我們可以將其轉(zhuǎn)換為Uint8Array來處理其中的二進(jìn)制數(shù)據(jù)。
請(qǐng)注意,發(fā)送和接收的二進(jìn)制數(shù)據(jù)格式需要相互協(xié)調(diào),以便正確解析數(shù)據(jù)。