js的websocket
2019-01-10 本文已影响5人
哆啦在这A梦在哪
1、Web Sockets:能够在客户端和服务端之间发送非常少量的数据,而不必担心HTTP那样字节级的开销
由于传递的数据包很小,因此WebSockets非常适合移动应用。
缺点:制定协议的时间比制定JavaScript API的时间还要长。
1) URL模式:
未加密:ws:// 已加密:wss://
2)创建WebSocket:先实例一个WebSocket对象并传入要连接的URL
var socket = new WebSocket("ws://www.example.com/server.php);
socket.close(); // 关闭连接
3) 表示当前状态的readyState属性
WebSocket.OPENING (0):正在建立连接
WebSocket.OPEN (1):已经建立连接
WebSocket.CLOSING (2):正在关闭连接
WebSocket.CLOSE (3):已经关闭连接
4)发送数据
var message = {
time: new Date(),
text: "Hello world!",
clientId: "asdfp8734rew"
};
socket.send(JSON.stringify(message)); // 复杂的数据结构要先进行序列化
5)接收数据
socket.onmessage = function(event){
var data = event.data; // data就是要解析的接收到的JSON字符串
}
6)其他事件:在连接生命周期的不同阶段触发
open:在成功建立连接时触发
error:在发生错误时触发