媒体类型MIME

1. 概念

Multipurpose Internet Mail Extensions 多用途英特网邮件扩展 是一种标准,用来表示文档、文件或字节流的性质和格式。

  • 通用结构: type/subtype

2. 分类

类型 描述 典型示例
text 普通文本 text/plain,text/html,text/css,text/javascript
image 图像,动图 image/gif,image/png,image/jpeg
audio 音频 audio/midi,audio/mpeg,audio/webm,audio/ogg
video 视频 video/webm,video/ogg
application 二进制数据 application/octet-stream,application/pkcs12,application/pdf

对于text文件类型,若没有特定subtype,就是用text/plain;二进制文件没有特定就用application/octet-stream

3. 重要类型

  • appplication/octet-stream
    • 应用程序文件的默认值。意思是未知的应用程序文件。
  • Text Types
    • text/plain
      • 文本文件默认值,未知的文本文件
    • text/css
    • text/html
  • JavaScript Types
    • application/javascript
    • application/ecmascript
  • Image Types
    • image/gif
    • image/jpeg
    • image/png
    • image/svg+xml
  • multipart/form-data
    • 用于HTML表单从浏览器发送信息给服务器
  • multipart/byteranges
    • 用于把部分的响应报文发送回浏览器

4. 一个表单发送请求的示例

<form action="http://localhost:8080/" method="post" enctype="multipart/form-data">
	<input type="text" name="myTextFiled">
	<input type="file">
	<input type="checkbox">
	<button>Send</button>
</form>

会发送这样的请求

Post/HTTP/1.1
Host: localhost:8000
User-Agent: Mozilla/5.0 (Macintosh; Intel Max OS X 10.9; rv:50.0) Gecko/20100101 Firefox/50.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Connection: keep-alive
Upgrade-Insecure-Requests: 1
Content-Type: multipart/form-data;
Content-Length: 465
Content-Disposition: form-data;name="myTextField"