MIME类型解析

 

MIME(Multipurpose Internet Mail Extensions)多用途网络邮件扩展类型,可被称为Media type或Content type,

它设定某种类型的文件当被浏览器打开的时候需要用什么样的应用程序,多用于HTTP通信和设定文档类型例如HTML。

之所以叫多用途网络邮件扩展类型,因为它最早被用于电子邮件系统,后用于浏览器,服务器将此类型名放入传给浏览器的数据中以告诉浏览器用什么样的插件打开它

MIME组成:(type/subtype; parameter)) 主类型+子类型+参数(可选)也可称为信息头+段头,这种称为更接近于“邮件”的概念

写法上,传统写法是全小写,但其本身对大小写不敏感

当前被认可的主类型包括: application text image multipart audio example font message model multipart video

子类型也由媒体类型组成,但它也能包含其他内容,例如前缀、作者名。

备注: 写法上注意;与后面的参数之间有空格

例如: text/html; charset=UTF-8

常见MIME类型:

application: 某种二进制附件,对于没有subtype的情况,默认是application/octet-stream

text: 文本,理论上可读,对于没有subtype的情况,默认是text/plain

image: 图像

audio: 音频

video: 视频

multipart: 多部分文档文件(复合文档文件)

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

下面是详细介绍

application/octet-stream 未知的应用程序文件

application/json json数据

text/plain 未知的文本文件(纯文本文件),浏览器会认为这是可以直接显示的

注: 浏览器分辨文件是基于MIME的,而不会把文件打开查看是否是其他类型,例如用link链接了一个标记为text/plain的文件,就算此文件是css文件,就算其后缀是.css,浏览器依旧不认

text/css css文件

text/html HTML文件

image/gif gif文件

常见的还有image/jpeg、image/png、image/svg

很多浏览器支持icon image/x-icon

multipart/form-data 多用于form表单提交,其中multipart即多部分文档,这里提供一个例子解析何为多部分文档

<form action="http://localhost:8000/" method="post" enctype="multipart/form-data">
<input type="text" name="myTextField">
<input type="checkbox" name="myCheckBox">Check</input>
<input type="file" name="myFile">
<button>Send the file</button>
</form>

mime类型的解析与应用的更多相关文章

  1. 游戏开发中IIS常见支持MIME类型文件解析

    游戏开发中IIS常见支持MIME类型文件解析 .apkapplication/vnd.android .ipaapplication/vnd.iphone .csbapplication/octet- ...

  2. MIME类型解析

    MIME(Multipurpose Internet Mail Extensions)多用途网络邮件扩展类型,可被称为Media type或Content type, 它设定某种类型的文件当被浏览器打 ...

  3. Rails中的MIME类型

    layout title date comments categories post rails的中的MIME类型 2014-09-08 21:40 true ruby Rails开发中经常使用不同的 ...

  4. HTTP协议扫盲(四)HTTP协议进阶 - MIME类型

    一.概念和原理 1.什么是MIME类型? MIME类型,即多用途互联网邮件扩展,它是一个互联网标准,在1992年最早应用于电子邮件系统,但后来也应用到浏览器. 服务器会将它们发送的多媒体数据的类型告诉 ...

  5. 从零开始学安全(四十)●上传文件MIME类型绕过漏洞防御

    MIME检测原理 服务端MIME类型检测是通过检查http包的Content-Type字段中的值来判断上传文件是否合法的. php示例代码: if($_FILES['userfile']['type' ...

  6. 补习系列(2)-springboot mime类型处理

    目标 了解http常见的mime类型定义: 如何使用springboot 处理json请求及响应: 如何使用springboot 处理 xml请求及响应: http参数的获取及文件上传下载: 如何获得 ...

  7. MIME 类型

    关于读音 为了防止大家出去丢人,我先示范一下,MIME应该独坐[maim],听起来就好像“男人”的英语法人一样. 浏览器和MIME的关系 浏览器依靠MIME类型解释网页. 每当浏览器请求一个web页面 ...

  8. flask请求钩子、HTTP响应、响应报文、重定向、手动返回错误码、修改MIME类型、jsonify()方法

    请求钩子: 当我们需要对请求进行预处理和后处理时,就可以用Flask提供的回调函数(钩子),他们可用来注册在请求处理的不同阶段执行的处理函数.这些请求钩子使用装饰器实现,通过程序实例app调用,以 b ...

  9. HTTP协议-MIME类型

    每一个 URL 都代表着一个资源对象,而当我们请求一个网页的时候,看似只请求了一个 URI(统一资源标识符),实际上这个网页可能包含多个 URI,例如图片资源的 URI 和视频资源的 URI 等.此时 ...

随机推荐

  1. SpringBoot中使用springfox+swagger2书写API文档

    随着前后端的分离,借口文档变的尤其重要,springfox是通过注解的形式自动生成API文档,利用它,可以很方便的书写restful API,swagger主要用于展示springfox生成的API文 ...

  2. PHP函数ip2long转换IP时数值太大而产生负数

    // 使用 sprintf 返回无符号十进制数 $long = sprintf("%u",ip2long($ip)); // 先转换为二进制然后在转换为十进制 $long = bi ...

  3. django的分页与添加图片

    分页: 在主页面的views里写接口 导包: from django.core.paginator import Paginator 接口: id=request.GET.get("page ...

  4. SoupUI 5.1.2(专业版)下载(含破解文件)

    包内含原安装包和破解文件,仅用于技术交流,切勿用于商业用途. 安装教程参考:https://www.cnblogs.com/miaojjblog/p/9778839.html 安装包及破解文件下载地址 ...

  5. jsp的环境搭建

    JSP : 动态网页 一.静态和动态的区别: 1.是否会随着时间.地点.用户操作的改变而改变. 2.动态网页需要使用服务器端的脚本语言(JSP) 二.BS CS 1.CS:QQ.微信.CS游戏. 缺点 ...

  6. 学号 20175313《Java程序设计》 第七周学习总结

    目录 一.教材学习内容总结 二.教材学习中的问题和解决过程 三.代码托管 四.心得体会 五.学习进度条 六.参考资料 一.教材学习内容总结 第八章主要内容 了解String类 常量对象:常量池中的数据 ...

  7. excel表格获取汉字大写首拼函数(自定义宏)

    打开excel,按Alt+F11,插入-模块,复制粘贴下边的函数 Function pinyin(p As String) As String i = Asc(p) Select Case i Cas ...

  8. ReLU激活函数的缺点

    训练的时候很”脆弱”,很容易就”die”了,训练过程该函数不适应较大梯度输入,因为在参数更新以后,ReLU的神经元不会再有激活的功能,导致梯度永远都是零. 例如,一个非常大的梯度流过一个 ReLU 神 ...

  9. Random Forest总结

    一.简介 RF = Bagging + Decision Tree 随机:数据采样随机,特征选择随机 森林:多个决策树并行放在一起 几个误区: 不是每棵树随机选择特征,而是每一个结点都随机选择固定数目 ...

  10. python迭代-如何对迭代器做切片操作

    如何对迭代器做切片操作 问题举例 读取某个文件内容的100~300行内容,我们是否可以使用 类似列表切片的方式得到一个100~300行文件内容的生成器 分析 列表的切片操作其实是在重载方法__getI ...