HTTP,Websocket,SSE协议

http协议在嵌入式开发很常见,就是面向服务器的一次连接(一次通信完就断开),客户端可以根据不同的路由来访问服务器不同的功能

Websocket是http基础上升级的双向长连接协议,客户端自己构建http请求头,加上一些请求升级服务器会在请求头到了之后保存套接字,后续使用套接字来进行通信,依靠二进制来进行通信,后续就没有服务器的应答,全是纯二进制数据。脱离了http协议。

SSE是基于http的长连接协议,并没有脱离http,只是对http连接的延长,但他是单向的,只能服务器向客户端发送数据,数据都是文本和字符串,同样,客户端也需要自己构建请求头,服务器响应后也会保存套接字来进行通信,后续服务器发的数据就是应答+数据。。。应答+数据,循环发送,每一个应答和数据都是一个数据体,服务器一次消息发送,客户端在消息处理函数里面是相当于收到了两个数据体。

客户端可以根据不同的URI,比如想要使用websocket,就在路径后面加上/ws,就可以访问服务器针对websocket协议的回调函数,服务器根据不同的路由来设置不同的回调函数,来实现支持不同的通信协议。

相关推荐
企业通信技术笔记2 小时前
企业IM内外网隔离部署:DNS、证书、WebSocket与跨网接口设计
websocket·网络协议·架构·php·信息与通信
流烟默4 小时前
HTTP 连接管理技术梳理:JDK KeepAliveCache 机制与池化选型
java·网络协议·http
Java小白笔记4 小时前
FlClash TUN 栈模式选择与验证指南
网络·网络协议
清水白石0085 小时前
ThreadPoolExecutor 线程越多越快?从 30ms HTTP 调用讲透并发数、连接池与背压
网络·网络协议·http
IT小白杨5 小时前
eBay多账号如何应对关联判定:主体、收款、IP、环境四层配置清单一次讲清
java·网络·网络协议·tcp/ip·自动化·指纹浏览器
隐擎fox6 小时前
网络传输安全剖析:WebRTC 本地真实 IP 泄漏机制(STUN/TURN)与 Python 防护检测实战
网络·网络协议·tcp/ip·安全·webrtc
为思念酝酿的痛7 小时前
应用层协议HTTP
网络·网络协议·http
薛之谦_9 小时前
国际SSL证书与国密SSL证书:专业视角下的全面解读
网络·网络协议·ssl
Wang's Blog20 小时前
Java框架快速入门: Spring Security+OAuth2之HTTP请求结构与认证基础
java·spring·http
Zenova EdgeOS21 小时前
C++ 工业边缘 libcurl HTTP 客户端实战
开发语言·c++·网络协议·边缘计算