WebSocket和HTTP协议的区别
文章类型:其他
发布者:hp
发布时间:2024-12-05
WebSocket和HTTP在我们开发过程中,经常使用,有着不同的用途,那么,他们的各自使用是怎么样的呢?
1:定义:
(1):WebSocket是一种实时通信协议,它允许客户端和服务器之间进行双向通信,而不需要每次请求都重新建立连接。
(1):WebSocket是HTML5中的新功能,它建立在HTTP协议之上,通过握手协议来建立持久化的连接。
(3):客户端和服务器之间的数据交换是以二进制形式进行的。
1:定义
(1):HTTP全称是“超文本传输协议”(Hypertext Transfer Protocol)
(2):它建立在TCP协议之上,通过请求-响应模式来传输数据。
(3):在HTTP中,客户端发送一个请求到服务器,服务器接收到请求后,返回相应的响应
(4):HTTP是一种无状态协议,每个请求-响应周期都是独立的
1:websocket是一种在单个TCP连接上进行全双工通信的协议
2:http:超文本传输协议,是一个简单的请求-响应协议,它通常运行在TCP上,是单向的通信协议
1:websocket=>是需要浏览器和服务器握手进行建立连接的
2:http=>是浏览器发起向服务器的连接,服务器预先并不知道这个连接
1:websocket=>是持久连接
2:http是短连接(http是可以通过Ajax一直发送请求和长轮循保持一段时间内的连接),但本质上还是短连接
1:websocket=>是有状态的双向连接
2:http对应的是http / https
1:都是基于TCP协议
2:websocket是基于http的,他们的兼容性都很好
3:在连接的建立过程中,对错误的处理方式相同
4:都使用Request/Response模型进行连接的建立
5:都可以在网络中传输数据
1:HTTP长轮询:客户端发起请求,服务端阻塞,不会立即返回,HTTP长轮询需要处理timeout,即timeout之后重新发起请求
2:WebSocket:客户端可发起请求,服务端也可发起请求