特点:
API
var ws = new WebSocket(‘ws://localhost:8080‘);
switch (ws.readyState) { case WebSocket.CONNECTING: // do something break; case WebSocket.OPEN: // do something break; case WebSocket.CLOSING: // do something break; case WebSocket.CLOSED: // do something break; default: // this never happens break; }
ws.onopen = function () { ws.send(‘Hello Server!‘); } // 如果要指定多个回调函数,可以使用addEventListener方法。 ws.addEventListener(‘open‘, function (event) { ws.send(‘Hello Server!‘); });
ws.onclose = function(event) { var code = event.code; var reason = event.reason; var wasClean = event.wasClean; // handle close event }; ws.addEventListener("close", function(event) { var code = event.code; var reason = event.reason; var wasClean = event.wasClean; // handle close event });
ws.onmessage = function(event) { var data = event.data; // 处理数据 }; ws.addEventListener("message", function(event) { var data = event.data; // 处理数据 });
ws.send(‘your message‘);
socket.onerror = function(event) { // handle error event }; socket.addEventListener("error", function(event) { // handle error event });
var data = new ArrayBuffer(10000000); socket.send(data); if (socket.bufferedAmount === 0) { // 发送完毕 } else { // 发送还没结束 }
推荐好文:http://www.ruanyifeng.com/blog/2017/05/websocket.html
原文:https://www.cnblogs.com/sghy/p/13529395.html