媒体类型 (通常称为Multipurpose Internet Mail Extensions) 是一种标准,用来表示文档,文件,或者字节流性质和格式
互联网号码分配机构(IANA)是负责跟踪所有官方MIME类型的机构。可以再媒体类型页面中找到最新的完整列表
重要
浏览器通常使用MIME(而不是文件扩展名)类型来确定如何处理URL,因此再web服务器再相应头添加正确的MIME类型非常重要,如果不正确,浏览器可能曲解文件
网站内容将无法正常工作,并且下载文件也会被错误处理
独立类型
text/plain
text/html
image/jpeg
image/png
audio/mpeg
audio/ogg
audio/*
video/mp4
application/*
application/json
application/javascript
application/ecmascript
application/octet-stream
...
独立类型表明了对文件的分类,可以是如下之一
类型 | 描述 | 典型事例 |
---|---|---|
text | 表明该文件是普通文本,理论上是人类可读 | text/plain, text/html, text/css, text/javascript |
image | 表明是某种图像。不包括视频,但是动态图gif也是image类型 | image/gif, image/png, image/jpeg, image/bmp, image/webp, image/x-icon, image/vnd.microsoft.icon |
audio | 表明是某种音频文件 | audio/midi, audio/mpeg, audio/webm, audio/ogg, audio/wav |
video | 表明某种视频文件 | video/webm, video/ogg |
application | 表明某种二进制数据 | application/octet-stream, application/pkcs12, application/vnd.mspowerpoint, application/xhtml+xml, application/xml, application/pdf |
对于text文件类型 若没有特定的subtype,就使用text/plain 类似的 二进制文件没有特定或已知的subtype 即使用application/octet-stream
Multipart类型
multipart/form-data
multipart/byteranges
multipartl类型表示细分领域的文件类型种类,经常对应不同的MIME类型。这是复合文件的一种表现方式。
multipart/form-data可用于联系HTML Forms和post方法,此外multipart/byteranges使用状态码206 partial Content来发送整个文件的子集,而HTTP对不能处理的复合文件使用特殊的方式: 将信息传递给浏览器(这时可能会建立一个“另存为”窗口,但是却不知道如何去显示内联文件)
重要的MIME类型
application/octet-stream
这是应用程序文件默认的值,意思是未知的应用程序文件, 浏览器一般不会自动执行或询问执行。浏览器会像对待设置了HTTP头Content-Disposition值为attachment的文件一样来对待这一类文件
text/plain
文本文件的默认值,即使它意味着未知的文本文件,但是浏览器是可以直接展示的。
备注`
text/plain并不是意味着某种文本数据,如果浏览器想要文本文件的明确类型,浏览器并不会考虑他们是否匹配,比如说,如果通过一个表明事下载css的文件的 link链接下载了一个text/plain的文件,如果提供的信息事text/plain,浏览器并不会认出这个是有效的css文件,CSS类型需要使用text/css。
text/css
在网页要被解析为css的任何css文件都必须指定MIME为text/css文件,通常,服务器不识别以.css为后缀的文件MIME类型,而是将其以MIME类型为text/plain或者是application/octet-stream来发给浏览器;在这种情况下,大多浏览器不识别其为css文件,直接忽略掉,特别注意为css文件提供正确的MIME类型.
打不动字了, 下篇继续写