HTTP中的content-Type
认识content-Type
要学习content-Type,首先要知道它是干什么用的。
Http协议采用了请求响应模型。客户端向服务端发送一个请求,请求头包含请求的方法、url、协议版本、以及包含请求修饰符、客户信息和内容的类似于MIME的消息结构。服务器以一个状态行作为相应,相应的内容包括消息协议的版本,成功或者错误编码加上包含服务器信息、实体元新消息以及可能的实体内容。
通常HTTP消息由一个启示行,一个或者多个头域,一个只是头域结束的空行和可选的消息体组成。HTTP的头域包括通用头、请求头、相应头和实体头四个部分。每个头域由一个域名,冒号(:)和域值三部分组成。域名是大小写无关的,域值前可以添加任何数量的空格符,头域可以被扩展为多行,在每行开始处,使用至少一个空格或制表符。
请求消息和相应消息都可以包含实体信息,实体信息一般由实体头域和实体组成。实体头域包含关于实体的原信息,实体头包括Allow、Content- Base、Content-Encoding、Content-Language、 Content-Length、Content-Location、Content-MD5、Content-Range、Content-Type、 Etag、Expires、Last-Modified、extension-header。
Content-Type是返回消息中非常重要的内容,表示后面的文档属于什么MIME类型。Content-Type: [type]/[subtype]; parameter。例如最常见的就是text/html,它的意思是说返回的内容是文本类型,这个文本又是HTML格式的。原则上浏览器会根据Content-Type来决定如何显示返回的消息体内容。
content-Type与Accept
1.Accept属于请求头,content-Type属于实体头。
· Http报头分为通用报头,请求报头,响应报头和实体报头。
· 请求方的http报头结构:通用报头|请求报头|实体报头
· 响应方的http报头结构:通用报头|响应报头|实体报头
2.(2)Accept代表发送端(客户端)希望接受的数据类型。
比如:Accept:text/xml;
代表客户端希望接受的数据类型是xml类型
Content-Type代表发送端(客户端|服务器)发送的实体数据的数据类型。
比如:Content-Type:text/html;
代表发送端发送的数据格式是html。
二者合起来,
Accept:text/xml;
Content-Type:text/html
即代表希望接受的数据类型是xml格式,本次请求发送的数据的数据格式是html。