不包含响应正文的 HTTP 状态代码的完整列表

问题描述 投票:0回答:2

我开始喜欢HTTP,直到我发现一些状态码

like 304
,不包含消息体并且以CRLF终止。

哪里有完整的列表?到目前为止,我得到了:

100-199
204
304
。还有其他的吗?

编辑:不,根据标准,没有其他。谢谢你的回答。

我关心持久连接的消息分隔。即一个 HTTP 消息在哪里停止,下一个消息在哪里开始。

http-status-codes
2个回答
21
投票

所有

4xx
错误代码的正文都是可选的:

除非响应 HEAD 请求,服务器应该包含一个实体,其中包含错误情况的解释,以及它是临时还是永久的情况。

同样适用于

5xx

除非响应 HEAD 请求,服务器应该包含一个包含错误情况解释的实体...

(应该意味着真的,他们应该,但这不是必须的。)

据我所知,

1xx
消息不包含正文。
201
(除了
204
205
)不必有实体。
3xx
是一个混合包,但其中很多都可以选择主体。

来源:HTTP/1.1:状态代码定义

消息长度信息的规则在HTTP 消息 - 4.4 消息长度中描述。这并不完全是微不足道的。


0
投票

对于 RFC 9110(截至 2024 年 3 月 31 日的当前 HTTP/1.1 规范),以下状态不得生成内容:

© www.soinside.com 2019 - 2024. All rights reserved.