温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

WebSocket基本原理是什么

发布时间:2021-12-21 14:17:26 来源:亿速云 阅读:152 作者:iii 栏目:云计算

这篇文章主要介绍“WebSocket基本原理是什么”,在日常操作中,相信很多人在WebSocket基本原理是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”WebSocket基本原理是什么”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

WebSocket 与 HTTP

1、HTTP 协议没有为了 WebSocket 的出现改变

2、WebSocket 属于 HTTP 之后的新协议

3、两者有交集, 也各有不同

4、WebSocket 借用 HTTP 协议完成一部分握手

WebSocket 握手

通过抓包融云 WebSocket 请求, 重点关注以下几个字段

WebSocket基本原理是什么

以上为发起 WebSocekt 请求抓包, 首先关注比 HTTP 多出的数值:

// 告知服务器, 发起的是 WebSocket 协议, 服务需进行 WebSocket 处理Upgrade: websocketConnection: Upgrade
Sec-WebSocket-Key: aI0TsvW7jltfmNOF+1eSqg== // Base64, 浏览器随机生成. 与后面服务端响应的 Sec-WebSocket-Accept 配套, 提供基本的防护. 比如恶意的连接, 或者无意的连接Sec-WebSocket-Version: 13 // 表示 websocket 的版本. 如果服务端不支持该版本, 需要返回一个 Sec-WebSocket-Versionheader, 里面包含服务端支持的版本号

再查看 Response Headers:

WebSocket基本原理是什么

Sec-WebSocket-Accept: OfEosYlCAcvV/jdwbW33VU0B50k= // 安全验证. 根据客户端请求首部 Sec-WebSocket-Key 计算 ( base64(sha1($Sec-WebSocket-Accept,'258EAFA5-E914-47DA-95CA-C5AB0DC85B11')) )
// 告知客户端, 已成功升级为 WebSocketUpgrade: websocketConnection: Upgrade
替代方案

浏览器没有完美替代 WebSocket 的方案. 只能用 ajax 轮询长轮训(long poll) 模拟, 两者都有性能问题且耗费资源

到此,关于“WebSocket基本原理是什么”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注亿速云网站,小编会继续努力为大家带来更多实用的文章!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI