Content-Type详解

概念了解:

Content-Type(Internet Media Type),互联网媒体类型,也叫做MIME类型,在互联网中有成白上千中不同得数据类型,HTTP在传输数据对象时会为他们打上称为MIME得数据格式标签,用于区分数据类型

在HTTP协议消息头中,使用Content-Type来表示请求和响应中得媒体消息。它用来告诉服务端如何处理请求的数据,以及告诉客户端(一般是浏览器)如何解析响应的数据。


Content-Type的格式:

Content-Type:type/subtype;parameter

  • type:主类型,任意的字符串,如text,如果是*号代表所有;
  • subtype:子类型,任意的字符串,如html,如果是*号代表所有,用“/”与主类型隔开;
  • parameter:可选参数,如charset,boundary等。
常见的Content-Type:

常见的Content-Type有数百个,下面列举一些常见的

  • text/html:HTML文档标记
  • text/html:普通ASCII文档标记
  • image/jpeg:JPEG图片标记
  • image/gif:GIF图片标记
  • application/javascript:js文档标记
  • application/xml:xml文档标记

Content-Type的使用:

request的Content-Type

一般我们在开发的过程中需要注意客户端发送请求时的Content-Type设置,特别是使用ajax的时候,如果设置的不巧当,很有可能导致请求失败

response的Content-Type

服务端响应的Content-Type最好也保持准确,虽然一般web开发中,前端解析响应的数据不会根据Content-Type,并且服务端一般可以自动设置准确的Content-Type

        

response的Content-Type设置建议:

  • 一般情况下不需要显示设置;
  • 如果是文件导出,Content-Type 设置为 multipart/form-data,并且添加一个Content-Disposition设置为attachment;fileName=文件.后缀。