当前位置: 首页 > article >正文

WebSocket相关问题

1.WebSocket是什么?和HTTP的区别?

WebSocket是一种基于TCP连接的全双工通信协议,客户端和服务器仅需要一次握手,两者之间就可以创建持久性的连接,并且支持双向数据的传输。WebSocket和HTTP都是基于TCP的应用层协议,都可以在网络中传输数据。它们的区别如下:

  • WebSocket是一种双向实时通信协议,而HTTP是一种单项通信协议。HTTP协议下的通信只能由客户端发起,而WebSocket协议可以由客户端和服务器端发起。

  • WebSocket使用ws://或者wss://作为前缀。

  • WebSocket通信的数据格式比较轻量,网络开销小。

 

2.WebSocket的工作流程是什么?

  1. 客户端向服务器发送一个HTTP请求,请求头中包含特殊字段,表示要求升级协议为WebSocket。

  2. 服务端收到这个请求后,如果支持WebSocket协议,会进行升级协议的操作,在响应体中包含特殊字段,表示协议成功升级。

  3. 客户端和服务器端之间建立了一个WebSocket连接,建立 WebSocket 连接之后,通过心跳机制来保持 WebSocket 连接的稳定性和活跃性。可以进行双向数据的传输,数据以帧的形式传送,每条消息会被切分为多个帧发送給接收端,接收端接收到帧后,进行重组装成完整的消息。

  4. 客户端或服务器端若想断开连接,由一方发送一个关闭帧,另一方收到后,回复一个关闭帧,之后双方关闭TCP连接。


http://www.kler.cn/a/229722.html

相关文章:

  • 【面试题】技术场景 4、负责项目时遇到的棘手问题及解决方法
  • 《自动驾驶与机器人中的SLAM技术》ch1:自动驾驶
  • minimum edit distance
  • Linux进程信号处理:深入理解与应用(3)
  • 了解这六种最佳移动自动化测试工具吗?
  • 页面单跳转换率统计案例分析
  • Spring boot集成各种数据源操作数据库
  • 二叉树经典题题解(超全题目)(力扣)
  • 「连载」边缘计算(十四)02-02:边缘部分源码(源码分析篇)
  • 第7节、双电机直线运动【51单片机+L298N步进电机系列教程】
  • okhttp 的 拦截器
  • ts总结2、any 类型,unknown 类型,never 类型(编译选项noImplicitAny)
  • pnpm + vite 从外网迁移到内网环境开发
  • 【推荐算法】userid是否建模
  • Java设计模式大全:23种常见的设计模式详解(一)
  • 【知识整理】一文理解系统服务高可用
  • Express框架介绍—node.js
  • 假期day4,链表增加与删除(2024/2/5)
  • 1、深度学习环境配置相关下载地址整理(cuda、cudnn、torch、miniconda、pycharm、torchvision等)
  • Unity之协同程序
  • 如何在HA智能家居系统中添加HACS集成并实现异地控制家中苹果与小米设备
  • Android Compose 一个音视频APP——Magic Music Player
  • [Linux] 网络编程套接字