【发布时间】:2012-10-23 09:39:43
【问题描述】:
HTTP 有 HTTP Cookie。 Cookies允许服务器跟踪用户状态、连接数、上次连接等。
HTTP 具有持久连接 (Keep-Alive),可以从同一个 TCP 连接发送多个请求。
【问题讨论】:
-
另一个我看不到“无状态”的领域是授权——尤其是代理授权。在协商过程中似乎是有状态的。对于 NTLM 身份验证,客户端需要记住代理身份验证的类型,并且服务器需要有状态,因为 NTLM 消息类型有一个序列。所以我不确定我是否理解答案。
-
我现在应该添加 HTTP/1.1 吗?因为我认为 HTTP/2 有状态。
-
HTTP/2 是有状态的。 HTTP 1 是无状态的。 用于 HTTP 1 的后续添加(如 cookie)添加了状态。这些添加不属于“核心”HTTP 1 规范。这就是为什么说 HTTP 1 是无状态协议的原因,尽管实际上它不是。另一方面,HTTP/2 在设计时内置了有状态组件。无需添加即可满足被标记为“有状态”的要求。