websocket
websocket 是一种网络通信协议。
一.为什么需要websocket?
因为HTTP协议有一个缺陷:通信只能由客户端发起。
这种单项请求的特点,注定如果服务器有连续的状态变化,客户端要获知就非常麻烦,我们只能使用“轮询”,每隔一段时间,就要发出一个询问,了解服务器有没有更新新的信息,最典型的情境就是聊天室。
轮询的效率低,而且非常浪费资源(因为必须不断链接,或者HTTP链接始终打开)。
二.客户端的API
1.构造函数
var ws =
new
WebSocket(
'ws://localhost:8080');
2. webSocket.readyState
3. webSocket.onopen
实例对象的onopen属性,用于指定连接成功后的回调函数。
4.webSocket.onclose
5.webSocket.onmessage
6.webSocket.send()
…….
三.服务端的实现
1.搭建websocket server
1.预先安装好node.js的开发环境,安装好环境自动会安装了npm。
2.cmd 进入项目文件夹
3.控制台输出 npm install nodejs-websocket
4.启动服务端的代码,链接上websocket服务器 node wsServer.js
ps:每次修改服务端的代码需要重启服务端的代码才能生效
socket.io
使用方法:
npm下安装:npm install socket.io
客户端需要引入:<script src="/socket.io/socket.io.js"></script>
也可以引入cdn<script src="https://cdnjs.cloudflare.com/ajax/libs/socket.io/2.0.3/socket.io.js"></script>
详细使用参考文档