WebSocket 双向通信
WebSockets 是一个新协议,为兼容现有浏览器的握手规范借用 HTTP 的协议来完成部分握手(跟HTTP协议基本没有关系)。
WebSocket 的优点
1. WebSocket客户端与服务器都可以主动传送数据给对方。HTTP协议中,服务端不能主动联系客户端,只能由客户端发起
2. 不同频率创建TCP请求及销毁请求,减少网络带宽资源的占用,同时也节省服务器资源。
WebSocket方法
1.Socket.send() : send(data)方法使用链接传输数据
2.Socket.close(): close()方法用于终止任何现有链接
WebSocket API
| 事件 |
事件处理程序 |
描述 |
| open |
Socket.onopen |
建立 socket 链接时触发这个事件 |
| message |
Socket.onmessage |
客户端从服务器接受数据时触发 |
| error |
Socket.onerror |
链接发生错误时触发 |
| close |
Socket.onclose |
链接被关闭时触发 |
///测试地址:ws://echo.websocket.org
var Socket = new WebSocket('ws://echo.websocket.org');
Socket.onopen = function(e){
Socket.send('hello');
}
Socket.onmessage = function(e){
console.log('message')
console.log(e.data);
Socket.close();//终止链接
//Socket.send('kiwi');//报错
}
Socket.onclose = function(e){
console.log('close');
}
Socket.onerror = function(){
console.log('error')
}
//message
//hello
//close