HTML5 Web Sockets通信
基础介绍
Web Sockets是HTML5提供的在Web应用程序中客户端与服务器端之间进行的非HTTP的通信机制。它实现了用HTTP不容易实现的服务器端的数据推送等智能通信技术。
使用Web Sockets API可以在服务器与客户端之间建立一个非HTTP的双向连接。这个连接是实时的,也是永久的,除非被显示关闭。这意味着当服务器想向客户端发送数据时,可以立即将数据推送到客户端的浏览器中,无须重新建立连接。只要客户端有一个被打开的socket(套接字)并且与服务器建立了连接,服务器就可以把数据推送到这个socket上,服务器不再需要轮询客户端的请求,从被动转为主动。
使用Web Sockets APIWeb Sockets的API本身非常简单。将URL字符串作为参数,然后调用WebSocket对象的构造函数来建立与服务器之间的通信连接,例如:
var host = "ws://localhost:8005/socket";var webSocket = new WebSocket(host);var userName, userAge, successFlag, currentTime;webSocket.addEventListener("message", function(event) { var DataBase = JSON.parse(event.data); userName = DataBase.userName; userAge = DataBase.userAge; successFlag = false; if(DataBase.DataType == "SQLServer") { successFlag = InsertSQLData(); } else if(DataBase.DataType == "ORACLE") { successFlag = InsertORACLEData(); } currentTime = new Date(); webSocket.send(JSON.stringify({ result: successFlag, time: currentTime }));}, false);