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
复制代码