html实现websocket协议,HTML5实现WebSocket协议原理浅析
WebSocket协议的目的是为了工作于现有的网络基础设施。作为这一设计原则的一部分,WebSocket连接的协议规范定义了一个HTTP连接作为其开始生命周期,进而保证其与pre-WebSocket世界的完全向后兼容。通常来说从HTTP协议切换WebSocket称为WebSocket握手。
浏览器发送一个请求到服务器,这表明它想开关从HTTP WebSocket协议。客户端通过升级标题表达的愿望,代码如下所示:
复制代码代码如下:GET ws://echo.websocket.org/?encoding=text HTTP/1.1
Origin: http://websocket.org
Cookie: __utma=99as
Connection: Upgrade
Host: echo.websocket.org
Sec-WebSocket-Key: uRovscZjNol/umbTt5uKmw==
Upgrade: websocket
Sec-WebSocket-Version: 13
如果服务器理解WebSocket协议,它通过升级头同意协议切换。
复制代码代码如下:HTTP/1.1 101 WebSocket Protocol Handshake
Date: Fri, 10 Feb 2012 17:38:18 GMT
Connection: Upgrade Server: Kaazing Gateway
Upgrade: WebSocket
Access-Control-Allow-Origin: http://websocket.org
Access-Control-Allow-Credentials: true
Sec-WebSocket-Accept: rLHCkw/SKsO9GAH/ZSFhBATDKrU=
Access-Control-Allow-Headers: content-type
此时HTTP连接分解并取代了WebSocket连接在同一底层TCP / IP连接。WebSocket连接使用HTTP(80)和HTTPS端口一样(443),默认情况下。
连接建立后,WebSocket数据帧可以发送客户机和服务器之间来回在全双工模式下。两种文本和二进制帧可以在两个方向同时发送。只有两个字节数据最小陷害。对于文本帧,每一帧始于0 x00字节,以0 xff字节结束,包含utf - 8数据。WebSocket文本框架使用一个终结者,而二进制帧使用前缀长度。
html实现websocket协议,HTML5实现WebSocket协议原理浅析相关推荐
- 认识HTML5的WebSocket 认识HTML5的WebSocket
2019独角兽企业重金招聘Python工程师标准>>> 在HTML5规范中,我最喜欢的Web技术就是正迅速变得流行的WebSocket API.WebSocket提供了一个受欢迎的技 ...
- html写个用户协议,五分钟学会HTML5的WebSocket协议
1.背景 很多网站为了实现推送技术,所用的技术都是Ajax轮询.轮询是在特定的的时间间隔由浏览器对服务器发出HTTP请求,然后由服务器返回最新的数据给客户端的浏览器.这种传统的模式带来很明显的缺点,即 ...
- 突袭HTML5之WebSocket入门1 - WebSocket协议
这两年中,HTML5发展的如火如荼,再不学习一下,觉得自己都落后了.说到HTML5,最让我惊心动魄的特性我觉得就是全新的WebSocket通信协议了.有Web通信TCP之称的 WebSocket的出现 ...
- websocket中发生数据丢失_tcp协议;websocket协议;同源策略和跨域
tcp协议 为什么连接的时候是三次握手,关闭的时候却是四次握手? 答:因为当Server端收到Client端的SYN连接请求报文后,可以直接发送SYN+ACK报文.其中ACK报文是用来应答的,SYN报 ...
- 网络协议从入门到底层原理(10)WebSocket、WebService、RESTful、HTTPDNS、FTP文件传输协议、邮件相关协议、IPv6
其他协议 WebSocket WebSocket - 建立连接 WebService RESTful HTTPDNS FTP文件传输协议 邮件相关的协议(SMTP.POP.IMAP) POP vs I ...
- WebSocket协议入门:WebSocket API
HTML5连接性领域包括WebSocket.服务器发送事件和跨文档消息传递(Cross-Document Messaging)等技术.在HTML5之前,浏览器窗口和框架之间的通信由于安全的原因而受到限 ...
- SpringBoot实现STOMP协议下的WebSocket
文章目录 WebSocket简介 STOMP简介 上去就是干 环境配置 引入依赖 新建WebSocket配置类 新建保存用户认证信息的实体类MyPrincipalHandshakeHandler 握手 ...
- websocket网络层详解_websocket 协议解析
本文作者:IMWeb went 未经同意,禁止转载 1.使用websocket 场景 websocket作为用于双向通信的实用协议,在笔者最近做的全平台私信系统进行了应用.本次开发的私信系统与普遍理解 ...
- tomcat 将http协议改为https协议,Websocket请求ws协议修改为wss协议
tomcat 将http协议改为https协议,Websocket请求ws协议修改为wss协议 一. 说明 WS协议和WSS协议两个均是WebSocket协议的SCHEM,两者一个是非安全的,一个是安 ...
最新文章
- 查看器_三款完美替代Windows10自带照片查看器的神器!
- mac下没有设置 SVN_EDITOR....错误解决方法
- Java for 循环中++i和i++的区别
- [云炬创业管理笔记]第三章打造优秀创业团队讨论4
- CRMEB Dockerfile文件
- groupby的用法
- BlockingCollectionT 类实现 列队操作
- Qt: error lnk1158 无法运行rc.exe
- mybatis plus使用in查询
- 泛微云桥任意文件读取漏洞[尽快升级]
- 页游游戏市场发展随笔
- 计算机论文英文摘要范文,毕业论文英文摘要范文三篇
- STM32F1读取MLX90614ESF非接触式温度传感器
- 批量替换 Word 文档某几页
- 安装fcitx五笔拼音
- 2019.9.11 小米笔试算法岗编程题 两个动归
- WIN10解包分区和磁盘分区教程
- 修改未能正确启动的docker容器的配置文件
- 用频谱仪测量晶体频率的方法
- 10min快速回顾C++语法(一)语法常识专题
热门文章
- 这就是飞秋下载早期的学习生涯
- 各个阶级的前端 必须掌握的基本技能汇总
- Jupyter简易上手的安装与使用教程
- 鸟类南飞,去的是哪个“南方”?
- 使用ssh公钥实现ssh免密码登录
- SIP系统怎么禁用?SIP系统完整性保护关闭方法(含M1)
- qaxobject控制word到某一行_太简单了!Excel信息导出为每页打印一行,且批量添加同一表头...
- P1618 三连击(升级版)-- python3实现
- laravel操作$request中值删除、增加、替换等方式的代码实例
- php采集绕过cloudflare,三行代码带你绕过cloudflare反爬