原文地址
github项目地址html
WebSocket是一种在单个TCP链接上进行全双工通讯的协议。
使得客户端和服务器之间的数据交换变得更加简单,容许服务端主动向客户端推送数据。
在WebSocket API中,浏览器和服务器只须要完成一次握手,二者之间就直接能够建立持久性的链接,并进行双向数据传输。
WebSocket与HTTP对比图git
const ws = new WebSocket('ws://localhost:8888'); ws.onopen = () => { console.log('WebSocket onopen'); } ws.onmessage = e => { console.log('WebSocket onmessage'); console.log('WebSocket message received:', e); console.log('WebSocket data received:', e.data); } ws.onclose = e => { console.log("WebSocket onclose"); };
const Koa = require('koa'); const WebSocket = require('ws'); const app = new Koa(); const ws = new WebSocket.Server({port: 8888}); ws.on('connection', ws => { console.log('server connection'); ws.on('message', msg => { console.log('server receive msg:', msg); }); ws.send('Information from the server'); }); app.listen(3000);
客户端github
服务端web