所有文章 > API术语解释 > REST API与WebSocket API区别?
REST API与WebSocket API区别?

REST API与WebSocket API区别?

WebSocket和RESTful API是用于在客户端和服务器之间进行通信的不同协议。它们有差异,也有协同,用户需要基于不同场景来选择不同的API交互方式,从而使架构效益最大化。

什么是WebSocket API?

WebSocket是一种网络传输协议,可在单个 TCP 连接上进行全双工通信,位于 OSI 模型的应用层。WebSocket 协议在 2011 年由 IETF 标准化为 RFC 6455,后由 RFC 7936 补充规范。

WebSocket 使得客户端和服务器之间的数据交换变得更加简单,允许服务端主动向客户端推送数据。在 WebSocket API 中,浏览器和服务器只需要完成一次握手,两者之间就可以创建持久性的连接,并进行双向数据传输。

这种双向行为可实现更丰富的客户端/服务交互,因为服务无需客户端发出明确请求即可将数据推送到客户端。WebSocket API 通常用于聊天应用程序、协作平台、多人游戏和金融交易平台等实时应用程序。

什么是REST API?

RESTful API 是一种符合 REST 的设计原则或具象状态传输 架构风格的 API,又称为REST API。简单的说,REST就是客户端按照约定向服务端请求指定数据、或者在服务端保存数据,服务端响应客户端请求的过程。

它们的区别?

从技术栈来看区别

WebSocketRest API
定位一种通行协议一种架构约束
通讯协议HTTP为主HTTP为主,也可以在TCP上
URL格式ws://localhost:8080/wshttp://localhost:8080/rest
报文格式未规定JSON
请求方式双向模型,单个TCP长连接,服务器可以主动向客户端推送数据请求/响应模型,TCP短连接,服务器不会主动向客户端推送数据
会话状态有状态协议无状态协议
与HTTP协议的关系一种独立的协议通过标准的HTTP动词对服务器上的资源进行增删改查操作
性能快、高吞吐量慢、低吞吐量
扩展只有垂直扩展(我们只能垂直添加资源)水平和垂直扩展(我们可以在水平和垂直方向上增加许多资源和用户数量)
适用场景实时聊天、视频、股票交易等非实时场景

参考资料

REST vs WebSockets

#你可能也喜欢这些API文章!

我们有何不同?

API服务商零注册

多API并行试用

数据驱动选型,提升决策效率

查看全部API→
🔥

热门场景实测,选对API

#AI文本生成大模型API

对比大模型API的内容创意新颖性、情感共鸣力、商业转化潜力

25个渠道
一键对比试用API 限时免费

#AI深度推理大模型API

对比大模型API的逻辑推理准确性、分析深度、可视化建议合理性

10个渠道
一键对比试用API 限时免费