HTTP 实体

2024 年 8 月 29 日 | 阅读 2 分钟

如果未受到请求方法或响应状态代码的限制,则实体将通过 HTTP 请求和响应消息传输。实体用于由实体头字段和实体主体组成,尽管某些响应将仅包含实体头。

在本节中,发送者和接收者均指客户端或服务器,具体取决于谁接收实体。

实体头字段

实体头字段用于定义有关实体主体的元信息。如果主体不存在,则实体头字段定义有关请求标识的资源的元信息。 某些元信息是可选的。本规范的某些部分可能需要某些元信息。

语法

扩展头机制用于允许添加实体头字段,该字段在不更改协议的情况下定义,但是接收者不能认为这些字段是可以识别的。 接收者会忽略无法识别的头字段,并且必须由透明代理转发。

实体主体

如果存在任何实体主体,它将以如下所述的格式通过 HTTP 请求或 HTTP 响应发送。 实体头字段定义编码。

语法

当消息主体存在时,实体主体仅会出现在消息中。 通过解码可能已应用的任何 Transfer-Encoding,从消息主体获得实体主体,以确保消息的正确和安全传输。

类型

当消息中包含实体主体时,标头字段 Content-Type 和 Content-Encoding 确定该主体的数据类型。 这些用于定义一个两层有序的编码模型

语法

Content-Type 用于指定底层数据的媒体类型。 Content-Encoding 指示应用于数据的任何其他内容编码,通常用于数据压缩,这是所请求的资源属性。

任何包含实体主体的 HTTP/1.1 消息都应包含一个 Content-Type 标头字段,该字段定义了该主体的媒体类型。如果未给出媒体类型的 Content-Type 字段,则接收者可以尝试使用检查其内容或用于标识资源的 URI 的名称扩展名来猜测媒体类型。 如果媒体类型仍然未知,则接收者应将其视为“application/octet-stream”类型。

实体长度

实体长度消息是应用任何传输编码之前的消息主体的长度。


下一个主题URL 方法