为什么我们需要设置标题请求的内容类型

Usm*_*eez 3 content-type webresponse httpwebrequest request-headers web

我想知道什么是内容类型,为什么我们需要设置标题请求的内容类型以及可以设置多少种标题内容?请尽可能提供文件。

bra*_*elt 5

Content-TypeHTTP请求标头中的“”向服务器指定服务器应期望的数据。如果服务器允许并接受多种类型的内容,则服务器可以使用此字段知道如何解释请求的主体。

例如:如果服务器在同一端点上同时允许XML和JSON数据,则将Content-Typeas 设置为:

内容类型:application / json

会让服务器知道它应该期望请求主体包含JSON。而通过:

内容类型:text / xml

会通知服务器期望正文中包含XML。

RFC7321-超文本传输​​协议(HTTP / 1.1):语义和内容Content-Type3.1.1.5节中定义:

“ Content-Type”标头字段指示关联表示形式的媒体类型:消息有效负载中包含的表示形式,还是由消息语义确定的所选表示形式。在对由Content-Encoding指示的任何内容编码进行解码之后,所指示的媒体类型既定义了数据格式,又定义了接收者在接收的消息语义范围内打算如何处理该数据。

IANA中注册了1500多种媒体类型,可以将其设置为请求的媒体类型Content-Type

第3.1.1.5节的最后一段说明,如果Content-Type未设置,则服务器可以假定数据已存在application/octet-stream或以其希望的任何方式解释请求。但:

这样做的客户可能会得出错误的结论,这可能会带来其他安全风险(例如,“特权升级”)。

服务器执行此操作时,它称为“ 内容嗅探”,可以通过设置以下内容来禁用它:

X-Content-Type-Options:nosniff