6.4.2 MIME
多用途互联网邮件扩展 MIME(Multipurpose Internet Mail Extensions) 是一种扩展标准,它最初用于增强电子邮件协议,以支持多种类型的内容(如文本、图像、音频等),但它也被广泛应用于其他互联网协议中,如 HTTP。
6.4.2.1 电子邮件 E-Mail(P293 6.5.1)
电子邮件是互联网上最早的应用之一。
相关词条:
-
用户代理 UA(User Agent)
指邮件服务的用户所使用的客户端。
-
(P296 6.5.2)简单邮件传送协议 SMTP(Simple Mail Transfer Protocol)
SMTP 主要解决如何发送邮件的问题。SMTP 是电子邮件最重要的两个标准之一(另一个即是 MIME),在现代邮件服务中仍广泛使用。
-
(P298 6.5.4)网际报文存取协议 IMAP(Internet Message Access Protocol)
IMAP 协议主要解决如何接收邮件的问题。现代邮件服务推荐使用 IMAP 接收邮件。
IMAP 允许用户在多个设备上查看和管理邮件,例如删除、标记已读、移动到文件夹等,这些操作都会直接体现到服务器上,并同步给用户使用的其他客户端。
IMAP 允许用户仅读取邮件的部分内容,而不是整个邮件。例如用户可以仅读取邮件的头部信息,然后决定是否读取完整内容;或者用户可以仅读取邮件的正文内容,而不读取邮件的图片和附件,以缩短邮件读取时间。
-
(P298 6.5.4)邮局协议 POP3(Post Office Protocol V3)
POP 协议主要解决如何接收邮件的问题。尽管现代邮件服务通常都支持 POP3 协议,但已不推荐使用,原因如下:
- POP 协议会在用户下载完邮件后将已下载的邮件从服务器上删除。 虽然 POP3 用户可以预先设置已下载邮件的邮件在服务器保存时间,但仍不适合需要长期在线访问和管理邮件的用户。
- POP3 对邮件的管理十分有限。POP3 不支持标签、文件夹等更为复杂的管理。
具体的:
-
当用户 A 使用服务器 A 提供的邮件服务向用户 B 发送邮件时,用户 A 的用户代理(即邮件客户端)使用 SMTP 协议与服务器建立连接,将一封邮件从用户代理推送到服务器 A。
-
服务器 A 接收到邮件后,会将收到的邮件暂存,并检查邮件目的地址的域名部分:
- 若域名就是指向服务器 A 自身,即用户 B 使用的邮件服务也是服务器 A 提供的,则不再进行进一步操作,等待用户 B 读取邮件。
- 若域名指向另一个服务器 B,即用户 B 使用的邮件服务是服务器 B 提供的,则服务器 A 使用 SMTP 协议与服务器 B 建立连接,并将邮件推送到服务器 B。
-
用户 B 在接收用户 A 发来的邮件时,用户 B 的用户代理与所使用的邮件服务器建立连接:
- 若用户 B 使用 POP3 协议,则用户 B 会将邮件从 POP3 服务器完整下载到本地,POP3 服务器会在邮件成功下载后将邮件删除,或按照用户设置的保留时长,在过期后删除。
- 若用户 B 使用 IMAP 协议,则可以在线读取邮件,IMAP 服务器不会在用户读取邮件后将邮件删除,用户 B 对邮件的所有操作都会体现在服务器上,当用户 B 使用另一个客户端时,此前的操作都能同步。
扩展:
- 现代邮件客户端在连接服务器时通常不需要填写 SMTP、IMAP、POP3 等服务器的信息,是因为邮件客户端通常内置了知名邮件服务的信息,客户端会根据登陆所使用的邮件地址判断所属于哪个邮件服务,并自动对应其服务器信息。
6.4.2.2 MIME(P300 6.5.6)
MIME 扩展了 SMTP,而非取代了 SMTP,当需要使用邮件传送非 ASCII 码内容时,MIME 用于定义其编码规则