web socket (记录下来方便观看)

 

Web Sockets

HTML5 WebSocket 设计出来的目的就是要取代轮询和 Comet 技术,使客户端浏览器具备像 C/S 架构下桌面系统的实时通讯能力。 浏览器通过 JavaScript 向服务器发出建立 WebSocket 连接的请求,连接建立以后,客户端和服务器端就可以通过 TCP 连接直接交换数据。也就是我们可以使用web技术构建实时性的程序比如聊天游戏等应用。

其实Web Sockets 的API很少,就下面这些

 1 websocket = new WebSocket("ws://your.socket.com:9001");  
 2 // 大开
 3 websocket.onopen = function(evt) { /* do stuff */ }; //on open event  
 4 // 当web socket关闭
 5 websocket.onclose = function(evt) { /* do stuff */ };  
 6 // 进行通信时
 7 websocket.onmessage = function(evt) { /* do stuff */ };  
 8 // 发生错误时
 9 websocket.onerror = function(evt) { /* do stuff */ };  
10 // 向服务器发发送消息
11 websocket.send(message); //send method  
12 websocket.close(); //close method

对于服务端的话,PHP支持了很多socket 相关api,但是我们可以使用更加成熟的框架(实用)比如phpsocket.ioRatchet.当然node.js写 socket也非常得心应手,node.js对高并发支持相对较好,可以使用http://socket.io/

服务端大概会做下面的事情: + 创建一个socket + 绑定地址和端口 + 监听进入的连接 + 接收新的连接 + web socket 握手 + 解码数据

注意:SSE和 Web Sockets 都是新的api,需要大家考虑兼容性*

 

本文摘抄自:http://mp.weixin.qq.com/s/MLyrAlphj-HNOR-h7DEufQ

posted @ 2016-12-13 16:06  _zhiqiu  阅读(212)  评论(0编辑  收藏  举报