《MIME协议(中文版)》,DOC格式,大小89KB。 内容预览: MIME结构 一、 RFC822协议 RFC822 文档定义了邮件内容的主体结构和各种邮件头字段的详细细节,但是,它没有定义邮件体的格式,RFC822文档定义的邮件体部分通常都只能用于表述一段普通的文本,而无法表达出图片、声音等二进制数据。另外,SMTP服务器在接收邮件内容时,当接收到只有一个“.”字符的单独行时,就会认为邮件内容已经结束,如果一封邮件正文中正好有内容仅为一个“.”字符的单独行,SMTP服务器就会丢弃掉该行后面的内容,从而导致信息丢失。 由于 Internet的迅猛发展,人们已不满足于电子邮件仅仅是用来交换文本信息,而希望使用电子邮件来交换更为丰富多彩的多媒体信息,例如,在邮件中嵌入图片、声音、动画和附件。但是,由于图片和声音等内容是非ASCII码的二进制数据,而RFC822邮件格式只适合用来表达纯文本的邮件内容,所以,要使用 RFC822邮件格式发送这些非ASCII码的二进制数据时,必须先采用某种编码方式将它们“编码”成可打印的ASCII字符后再作为RFC822邮件格式的内容。邮件阅读程序在读取到这种经过编码处理的邮件后,再按照相应的解码方式解码出原始的二进制数据,这样就可以借助RFC822邮件格式来传递多媒体数据了。这种做法需要解决以下两个技术问题: (1) 邮件阅读程序如何知道邮件中嵌入的原始二进制数据所采用的编码方式; (2) 邮件阅读程序如何知道每个嵌入的图像或其他资源在整个邮件内容中的起止位置。 针对这个问题,人们后来专门为此定义了MIME(Multipurpose Internet Mail Extension,多用途Internet邮件扩展)协议。 二、 RFC822结构 ### MIME协议详解 #### 一、引言与背景 随着互联网技术的发展,用户对于电子邮件的需求不再局限于纯文本信息的交换,而是希望能够通过电子邮件传递更加丰富多彩的多媒体内容,如图片、声音、动画等。然而,传统的电子邮件协议——RFC822在设计之初仅支持纯文本邮件的发送与接收,并未考虑到多媒体内容的传输需求。这一限制导致了当用户尝试在邮件中添加图片或声音等非ASCII码的二进制数据时,会遇到诸多问题。 为了克服这些问题,MIME(Multipurpose Internet Mail Extensions,多用途Internet邮件扩展)协议应运而生。MIME协议是在RFC822基础上的一种扩展,旨在解决如何在电子邮件中有效传输多媒体数据的问题。 #### 二、RFC822协议的局限性 1. **邮件体格式单一**:RFC822文档虽然详细定义了邮件的主体结构和邮件头字段,但并未规定邮件体的具体格式,这意味着其默认只能处理普通的纯文本内容,而无法处理图片、声音等二进制数据。 2. **特殊字符导致的信息丢失**:SMTP服务器在接收邮件时,若遇到单独的“.”字符,则会错误地认为邮件内容结束,从而可能忽略后续的信息,造成信息丢失。 #### 三、MIME协议的提出及实现 ##### 1. 编码方式的选择 为了使邮件阅读程序能够识别并正确处理邮件中的多媒体内容,MIME协议引入了几种编码方式,例如Base64、Quoted-Printable等,这些编码方式可以将非ASCII码的二进制数据转换为可打印的ASCII字符。邮件阅读程序在接收到邮件后,根据邮件头部信息中指定的编码方式对其进行解码,还原为原始的二进制数据。 ##### 2. 内容类型的标识 MIME协议定义了一系列的内容类型(Content-Type),如"text/plain"、"text/html"、"image/jpeg"等,用以指示邮件中各部分的具体内容类型。这样,邮件阅读程序就能明确地知道邮件中各个部分的性质和应该如何处理它们。 ##### 3. 解决邮件内容丢失的问题 MIME协议通过在邮件内容前加入特殊的边界标记(boundary),来避免SMTP服务器因误将邮件中的"."字符视为结束标志而导致的内容丢失问题。这种方式使得邮件中的每个部分都能被正确识别和处理。 #### 四、MIME协议的关键特点 1. **多段邮件**:MIME协议允许在同一封邮件中发送多段内容,包括不同格式的文本、图片、音频等多种类型的数据。 2. **嵌入式资源**:MIME协议支持将图像等资源嵌入到邮件正文之中,增强了邮件的交互性和可读性。 3. **兼容性**:MIME协议是对RFC822的扩展而非替代,因此能够与现有的邮件系统无缝对接。 4. **安全性增强**:通过定义特定的内容转移编码方式,MIME协议确保了二进制数据的安全传输,减少了传输过程中的数据损坏风险。 #### 五、MIME协议的实践示例 以下是一个简单的MIME格式邮件示例: ``` Return-Path: <it315_test@sina.com> Delivered-To: it315_test@mx72.mail.sohu.com Received: from smtp.sina.com.cn (unknown [202.108.3.177]) by sohumx139.sohu.com (Postfix) with SMTP id E4F9802C1249 for <it315_test@sohu.com>; Thu, 10 Nov 2005 16:39:50 +0800 (CST) Received: (qmail 49221 invoked from network); 10 Nov 2005 08:39:33 -0000 Received: from unknown (HELO it315?test) (218.246.5.151) by smtp.sina.com.cn with SMTP; 10 Nov 2005 08:39:33 -0000 From: it315_test@sina.com To: it315_test@sohu.com Subject: test Message-Id: <20051110083950.E4F9802C1249@sohumx139.sohu.com> Date: Thu, 10 Nov 2005 16:39:50 +0800 (CST) Status: RO X-UIDL: 1131611863.21509_77.mx72 test!!! ``` 在这个例子中,可以看到邮件头包含了多个关键字段,如`Return-Path`、`Received`、`From`、`To`、`Subject`等,以及邮件体中包含的简单文本内容。通过这样的格式,邮件系统能够正确解析邮件内容,并将其呈现给用户。 #### 六、总结 MIME协议的提出和发展极大地丰富了电子邮件的功能,使得用户能够在电子邮件中自由地添加各种多媒体元素,提高了信息交流的效率和质量。通过对MIME协议的理解和应用,我们可以更好地利用电子邮件系统,实现更高效、更丰富的信息传递。
剩余6页未读,继续阅读
- 粉丝: 7092
- 资源: 416
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- CC2530无线zigbee裸机代码实现按键控制LED开关.zip
- CC2530无线zigbee裸机代码实现按键控制PWM灯光强度.zip
- CC2530无线zigbee裸机代码实现按键控制流水灯.zip
- 无感FOC电机三相控制高速吹风筒方案 FU6812L+FD2504S 电压AC220V 功率80W 最高转速20万RPM 方案优势:响应快、效率高、噪声低、成本低 控制方式:三相电机无感FOC 闭环方
- CC2530无线zigbee裸机代码实现查询方式使用定时器.zip
- CC2530无线zigbee裸机代码实现串口UART0发送字符串.zip
- CC2530无线zigbee裸机代码实现串口UART0收发字符串.zip
- CC2530无线zigbee裸机代码实现串口发送指令控制LED灯.zip
- CC2530无线zigbee裸机代码实现定时器T1的使用.zip
- CC2530无线zigbee裸机代码实现定时器T3的使用.zip
- 基于51单片机的PWM波形发生器设计(Protues仿真)-毕业设计
- 模块化多电平变流器 MMC 的VSG控制 同步发电机控制 MATLAB–Simulink仿真模型 5电平三相MMC,采用VSG控制 受端接可编辑三相交流源,直流侧接无穷大电源提供调频能量 设置频率
- 锁相环学习电路,有教程 对新手非常友好,一看就懂 1,输出频率800MHz或者1GHz, 采用Ring-VCO的结构 2,输入参考频率20MHz 3,分频器是40-50分频 4,电荷泵电流
- MF000588-ASP.NET信息中心标准化管理系统源码.zip
- 基于51单片机的烟雾采集报警系统(protues仿真)-毕业设计
- 模拟器银河麒麟是基于Linux发行版Ubuntu开发的自主可控操作系统,为我国信息基础建设提供了重要支撑 截至目前,银河麒麟V10的软件仓库已经提供了大量国产软件,但在特定情况下,我们可能还是希望使用
- 1
- 2
- 3
前往页