MIME记录

MIME学习

1、MIME 全称:”Multipurpose Internet Mail Extensions“ 中文:”多用途互联网邮件扩展“,展示的是一系列的电子邮件规范,成为电子邮件实际上地标准。

2、传统的电子邮件的特点:就是规定电子邮件只能使用ASCII字符。

这导致了三个结果:

1)非英语字符都不能在电子邮件中使用;
2)电子邮件中不能插入二进制文件(如图片);

3)电子邮件不能有附件。

3、MIME对传统邮件的扩展,表现在它在邮件上加了几条语句,其中重要的3条:

第一条是:

1
MIME-Version: 1.0

说明了MIME版本号

第二条是:

1
Content-Type: text/plain; charset='ISO-8859-1'

表明了传递信息的类型和编码类型

类型:

1
2
3
4
5
6
7
8
text/plain:纯文本,文件扩展名.txt
text/html:HTML文本,文件扩展名.htm和.html
image/jpeg:jpeg格式的图片,文件扩展名.jpg
image/gif:GIF格式的图片,文件扩展名.gif
audio/x-wave:WAVE格式的音频,文件扩展名.wav
audio/mpeg:MP3格式的音频,文件扩展名.mp3
video/mpeg:MPEG格式的视频,文件扩展名.mpg
application/zip:PK-ZIP格式的压缩文件,文件扩展名.zip

整个Content-Type这一行,不仅使用在电子邮件,后来也被移植到了HTTP协议中,所以现在只要是在网上传播的HTTP信息,都带有Content-Type头,以表明信息类型。

传统邮件不支持ASCII码和二进制数据,所以规定了第三条数据:

1
Content-transfer-encoding: base64

base64编码是用于传输二进制数据的方案,Base64将数据作为24位组处理,将该数据映射到四个编码字符。它有时被称为3到4编码。24位组的每6位用作映射表(base64字母表)的索引,以获得编码数据的字符。编码数据的行长限制为76个字符。base64编码中使用的字符,base64字母表,不包括对SMTP或与MIME边界字符串一起使用的连字符的重要特殊字符。

许多邮件传输代理只能处理短字符的US-ASCII字符。这被称为“7bit”或有时称为“7bit编码”文本。SMTP强加了这个限制。为了在互联网上发送更丰富的文件类型,以便所有的MTA都可以正确处理它们,必须使用某种编码。编码的目的是仅使用7位字符和有限的行长来表示文件的内容。该文件可以是图像文件,可执行文件或任何通用二进制文件。

虽然定义了五个内容传输编码值,以及可扩展X令牌,base64和quotable-printable是MIME定义的唯一实际的编码方案

Content-transfer-encoding.aspx)