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

简介: 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


相关文章
|
Kubernetes 网络协议 Python
Python网络编程:从Socket到Web应用
【4月更文挑战第9天】本文探讨Python在网络编程中的应用,包括Socket编程和Web应用开发。Python的`socket`模块支持TCP/IP客户端和服务器,示例展示了一个echo服务器。此外,Python通过Flask、Django等Web框架简化Web应用开发,支持异步Web编程如Tornado和aiohttp。Python也在微服务架构中占有一席之地,适用于构建轻量级、高效的网络服务。
194 6
|
11月前
|
Kubernetes 网络协议 Python
Python网络编程:从Socket到Web应用
在信息时代,网络编程是软件开发的重要组成部分。Python作为多用途编程语言,提供了从Socket编程到Web应用开发的强大支持。本文将从基础的Socket编程入手,逐步深入到复杂的Web应用开发,涵盖Flask、Django等框架的应用,以及异步Web编程和微服务架构。通过本文,读者将全面了解Python在网络编程领域的应用。
175 1
|
Java
Java Socket编程 - 获取WEB站点主页信息
Java Socket编程 - 获取WEB站点主页信息
65 0
|
Python
python高级-socket和web相关(下)
python高级-socket和web相关(上)
106 0
|
网络协议 Python
python高级-socket和web相关(上)
python高级-socket和web相关
135 0
|
开发框架 移动开发 网络协议
ASP.NET Core 使用 Web Socket
ASP.NET Core 使用 Web Socket
498 0
|
缓存 网络协议 JavaScript
HTML学习笔记(九) Web Socket
HTML学习笔记(九) Web Socket
178 0
|
Web App开发 监控 前端开发
如果监控摄像头不支持Web Socket,猿大师播放器还能在网页中播放RTSP流吗?
猿大师播放器在前端用web socket是浏览器和中间件及播放程序之间的通讯协议,和实际播放无关,只要浏览器支持web socket就可以播放,现在大部分浏览器都支持web socket,所以就算监控设备不支持Websocket,用猿大师播放器播放RTSP也是是没问题的。
323 0
如果监控摄像头不支持Web Socket,猿大师播放器还能在网页中播放RTSP流吗?
|
前端开发 JavaScript Windows
|
13天前
|
算法 Java Go
【GoGin】(1)上手Go Gin 基于Go语言开发的Web框架,本文介绍了各种路由的配置信息;包含各场景下请求参数的基本传入接收
gin 框架中采用的路优酷是基于httprouter做的是一个高性能的 HTTP 请求路由器,适用于 Go 语言。它的设计目标是提供高效的路由匹配和低内存占用,特别适合需要高性能和简单路由的应用场景。
116 4