Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2105698
  • 博文数量: 194
  • 博客积分: 6450
  • 博客等级: 准将
  • 技术积分: 2085
  • 用 户 组: 普通用户
  • 注册时间: 2005-06-06 13:39
文章分类

全部博文(194)

文章存档

2013年(38)

2012年(11)

2011年(1)

2010年(1)

2009年(4)

2008年(13)

2007年(18)

2006年(63)

2005年(45)

我的朋友

分类:

2005-12-14 10:31:14

经常有地方提到根据文件的 MIME 类型来打开文件等, 这里的 MIME 到底指的什么呢?

MIME 是 Multipurpose Internet Mail Extensions 的缩写. 原始的定义在 可以查看到:

   MIME means Multipurpose Internet Mail Extensions, and refers to an
   official Internet standard that specifies how messages must be formatted
   so that they can be exchanged between different email systems.

历史上有很多技术,发明的初衷和最后的用途大相径庭,比如大家都在用的“PS/2 鼠标接口”,其名称来源“IBM PS/2 个人电脑”早已经去世多年了。

MIME 与此类似。这个名字很难懂,简单的说就是实现了在 email 中携带“附件”。不要认为携带附件对电子邮件来说是天经地义的,想想看,一份电子邮件就是个纯文本文件,如何在其中再嵌入一个图片?

注意我们桌面系统中使用的是“MIME type”,而并非“MIME”。当我们成功地在一封 email 中嵌入多个文件(即所谓“多段”,multipart)时,我们需要一种标识每个段落分别是什么类型的机制,这个机制就是 mime-type,参见 RFC2046。它定义了 “type/subtype pairs”的形式,即我们所熟知的如“text/html”,“image/png”等等。

这个表达形式比传统上的其他方案,比如早期 Windows 的“扩展名”方案要丰富和灵活得多,因此被广泛采用。当我们在 Linux 上构建桌面系统时,我们已经找不到理由不使用这个类型标识方案了

阅读(998) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~