WebSocket API是纯事件驱动的。应用程序代码监听WebSocket对象上的事件,以便处理输入数据和连接状态的改变。WebSocket协议也是事件驱动的。客户端应用程序不需要轮询服务器来得到更新的数据。消息和事件将在服务器发送它们的时候异步到达。
//实例化一个WebSocket对象,并传入要连接的决定URL
var socket = new WebSocket("url"); //url中要使用ws://来代替http:// ;使用wss来代替https://
//当成功建立连接时会触发open事件
socket.onopen = function(){
alert("established");
}
//当发生错误时会触发error事件
socket.onerror = function(){
alert("error!");
}
//当连接关闭时会触发close事件
socket.onclose = function(){
alert("closed!");
}
//使用send() 方法发送数据 只能接受字符串 json对象要先序列化成json字符串
socket.send(str);
//当服务端像客户端发来消息,WebSocket对象就会触发message事件
socket.onmessage = function(event){
console.log(event.data);//返回的数据 也为字符串形式
}
//调用close()方法 会关闭Web Sockets连接,可在任何时候调用close()方法
socket.close();
//用来监听关闭事件
webSocket.onclose();