我看到HTTP协议默认使用可靠的TCP连接,其中一个HTTP特性是无连接的。现在我搞不懂这有什么意义?它是如何使用TCP的,同时又是无连接的,我知道TCP是面向连接的。
发布于 2021-08-23 00:17:24
HTTP和TCP是不同的东西。TCP是一个传输层协议,而HTTP是一个应用层协议。HTTP使用TCP进行数据传输。
国际海事组织这网站有一个很好的解释:
HTTP是无连接的: HTTP (即浏览器启动请求),在发出请求后,客户机等待响应。服务器处理请求并发送一个响应,然后客户端断开连接。因此,客户机和服务器仅在当前请求和响应期间相互了解。更多的请求是在新的连接上进行的,比如客户机和服务器是新的。
但是,Wikipedia将HTTP定义为无状态:
HTTP是一种无状态协议。无状态协议不要求HTTP服务器在多个请求期间保留有关每个用户的信息或状态。但是,一些web应用程序使用HTTP cookie或web窗体中的隐藏变量实现状态或服务器端会话。
根据他们的解释,这些术语似乎可以互换使用。但是,这并不是真的,因为在用的HTTP版本允许您通过cookie等来识别用户并创建持久的连接。
https://stackoverflow.com/questions/68886000
复制相似问题