WebSocket建立连接的过程

这篇具有很好参考价值的文章主要介绍了WebSocket建立连接的过程。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、WebSocket是什么?

WebSocket实现了浏览器与服务器全双工通信,能更好的节省服务器资源和带宽并达到实时通讯的目的。解决了http无状态、短链接和服务器端无法主动给客户端推送数据等问题。其通信基础也基于TCP。由于较老的浏览器可能不支持WebSocket协议,所以使用WebSocket通信的双方在进行TCP的三次握手之后,还需要额外在进行一次握手,这一次握手的双方通信的报文也是基于http协议改造的。

二、webSocket建立连接的过程

首先要经过TCP的三次握手,在此就不赘述了,可以参考之前的文章
一次真实的WebSocke请求:
WebSocket建立连接的过程
格式要求:

  • 握手必须是一个有效的HTTP请求
  • 请求方式必须是GET,且HTTP的版本必须是1.1
  • 请求头中必须包含host字段
  • 请求头中必须包含Connection字段,且值为Upgrade
  • 请求头中必须包Sec-WebSocket-Key字段,该字段值是客户端的标识编码成 base64 格式
  • 请求必须包含 Sec-WebSocket-Version字段信息,值必须为 13
  • 请求必须包含Origin 字段;

拟人化展示从HTTP协议升级到WebSocket协议的过程:
WebSocket建立连接的过程
1、发送一个GET请求
关键:Upgrade: websocket;Connection: Upgrade;
这两个就告诉服务器,我要发起websocket协议,我不是HTTP

2、服务器收到了协议,返回一个 Switching Protocol, 这样就连接成功了

3、接下来的通信都是websocket, 这样就很好的连接了文章来源地址https://www.toymoban.com/news/detail-427241.html

到了这里,关于WebSocket建立连接的过程的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • WebSocket建立连接传参常用方式

    近期在做一个物联网项目,需要实现页面的实时更新,这里考虑到用websocket来实现,对于让项目支持websocket这个在springboot中基于spring-boot-starter-websocket来构建是一件很简单的事情,本文就不赘述了。本文主要就建立websocket时如何传参进行说明 当我们的一个web站点,既有普通的

    2024年02月13日
    浏览(35)
  • postman连接websocket, 建立连接、聊天测试(v8.5.1)

    ⬆️ 是发送的信息,     ⬇️ 是接收到的信息

    2024年02月06日
    浏览(33)
  • 前端使用websocket发送消息,建立连接(详细)。【前端】

    序言 今天来学习一下前端如何使用websocket发送消息 1.1 什么是WebSocket WebSocket 是一种在单个 TCP 连接上进行全双工通信的协议,它可以让客户端和服务器之间进行实时的双向通信。与传统的 HTTP 请求不同,WebSocket 使用了一个长连接,在客户端和服务器之间保持持久的连接,从

    2024年02月04日
    浏览(41)
  • vue-页面使用websocket建立连接用于测试

    前言 websocket双向通讯在项目中经常使用,但一般都是封装成第三方包,登录,退出建立连接。 这样使用是合理,但不便于测试,其实在.vue页面通过new方式可以直接使用websocket。 在页面实例加载完成之后连接websocket,在组件销毁时候断开websocket连接。 注意具体情况要跟后端

    2024年02月15日
    浏览(37)
  • HTTPS连接建立过程

    什么是HTTPS HTTPS,Hyper Text Transfer Protocol over SecureSocket Layer,超文本传输安全协议。 在 TCP 和 HTTP 之间加入了 SSL/TLS 安全协议,使得报文能够加密传输。在 TCP 三次握手之后,还需进行 SSL/TLS 的握手过程,才可进入加密报文传输。 SSL代表安全套接字层。它是一种用于加密和验证

    2024年02月11日
    浏览(42)
  • https 建立连接过程分析

    从真实的抓包开始 根据抓包结果可以看到 从客户端发起请求开始,主要经过以下几个过程: 1、 TCP 三次握手 2、浏览器发送 Client Hello 到服务器 3、服务器发送 Server Hello 、证书、证书状态、服务端密钥交换,到浏览器 4、浏览器发送 客户端密钥交换、 Change Cipher Spec 、加密的

    2024年02月08日
    浏览(102)
  • 建立和终止TCP连接过程

    http 和 https 区别: http 使用过程中存在安全性问题:http 使用明文通信,容易被窃听。由于 http 不验证通信方的身份,攻击者可以伪装成合法的通信方进行欺骗。并且 http 无法提供报文的完整性验证,因此报文有可能被篡改。 https 使用 SSL(Secure Sockets Layer) 或 TLS(Transport Layer

    2024年02月15日
    浏览(38)
  • HTTPS安全连接的建立过程

    HTTP (Hypertext Transfer Protocol) 和 HTTPS (Hypertext Transfer Protocol Secure) 都是用于在 Web 浏览器和服务器之间传输数据的协议。它们之间的主要区别在于安全性。 HTTP 是一种不安全的协议,因为它在传输过程中不对数据进行加密。这意味着如果有人截取了数据包,就可以轻松地读取其中

    2024年02月15日
    浏览(72)
  • [chatgpt]关于openssl建立安全连接过程问答

    openssl建立安全连接的原理和过程? OpenSSL是一个开源的、功能强大的加密库,其可以为压缩包压缩和加密、为网络连接提供安全性等提供支持。既可以应用于客户端,也可以应用于服务器端。 OpenSSL建立安全连接的原理和过程如下: 1. 服务端创建公钥和私钥,并将公钥发布到全

    2024年01月19日
    浏览(38)
  • 简述TCP/IP建立连接过程(附流程和代码)

    前言: TCP/IP 定义了计算机操作系统如何连入互联网,以及数据传输的标准。 TCP和IP是属于不同协议栈层的,只是这两个协议属于协议族里最重要的协议,所以协议栈或者模型以之命名了。 本段转载C语言中文网:TCP/IP 不是指一个协议,也不是 TCP 和 IP 这两个协议的合称,而

    2024年02月04日
    浏览(92)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包