WebSocket介绍
WebSocket是HTML5开始提供的一种在单个 TCP 连接上进行全双工通讯的协议。
在WebSocket API中,浏览器和服务器只需要做一个握手的动作,然后,浏览器和服务器之间就形成了一条快速通道。两者之间就直接可以数据互相传送。
浏览器通过 JavaScript 向服务器发出建立 WebSocket 连接的请求,连接建立以后,客户端和服务器端就可以通过 TCP 连接直接交换数据。
当你获取 Web Socket 连接后,你可以通过 send() 方法来向服务器发送数据,并通过 onmessage 事件来接收服务器返回的数据。
服务端开源项目
websockets/ws
nodejs项目,测试通过。
TooTallNate/Java-WebSocket
Java项目,测试通过。
theturtle32/WebSocket-Node
依赖与python/VS C++开发环境,未测试运行通过。
WebSocket API解析
WebSocket 属性
WebSocket 事件
WebSocket 方法
/** * WebSocket测试 * ????http://www.runoob.com/html/html5-websocket.html */var ws;/** * 连接WebSocket服务端 */function WebSocketConnect() { ???if("WebSocket" in window) { ???????ws = new WebSocket("ws://localhost:9003"); ???????ws.onopen = function() { ???????????console.log("WebSocket server connected...") ???????}; ???????ws.onmessage = function(res) { ???????????var msg = res.data; ???????????console.log(msg); ???????}; ???????ws.onerror = function() { ???????????console.log("connect error..."); ???????}; ???????ws.onclose = function() { ???????????console.log("disconnect..."); ???????}; ???}}/** * 发送数据 */function sendMsg() { ???if(ws){ ???????ws.send("0xAA,0xBB"); ???}}/** * 关闭连接 */function closeWs() { ???if(ws){ ???????ws.close(); ???????ws = null; ???????console.log("closed..."); ???}}
参考:
HTML5 WebSocket
WebSocket 介绍(二)-WebSocket API
WebSocket 学习(三)--用nodejs搭建服务器
HTML WebSocket笔记
原文地址:http://www.cnblogs.com/zhen-android/p/7613386.html