TCP/IP学习笔记(8)
2010-04-03 20:34:29 来源:WEB开发网2、信封、首部和正文
(1)信封:由MTA用来交付。
MAIL From:xiaoj@njb.swirebev.com
RCPT To:xiaoj@hotmail.com
(2) 首部:由用户代理使用。共有9个字段:Received、Message_Id、From、Data、Reply-To、X-Phone、X-Mailer、To、Subject。每个首部字段都包含一个名、紧跟一个冒号,接着是字段值。
(3)正文:是发送给接收用户报文的内容。当用DATA命令发送时,先发送首部,紧跟一个空行,然后是正文。用DATA发送的各行都必须小于1000字节。
用户接收正文部分,加上一些首部字段,并把结果传给MTA。MTA加上一些首部字段,加上信封,并把结果发给另以MTA。所有这一些都以NVT ASCII格式发送。
3、扩充的SMTP:
要使用ESMTP,首先通过EHLO命令而不是HELO命令启动与服务器的会话。它会显示扩充命令:EXPN、SIZE、HELP、8BITMIME、XADR等。SIZE命令是让客户在MAIL FROM命令中以字节的多少指定报文的大小,这样服务器可以在客户开始发送报文之前验证它是否接收该长度的报文。8BITMIME允许客户把关键字BODY加到MAIL FROM命令中,指定正文中是否包含NVT ASCII(默认)或8位数据。除非客户收到服务器响应EHLO命令发来的8BITMIME关键字,否则禁止客户发送任何非NVT ASCII字符。
(1)首部变化:非ASCII字符
用途主要是为了允许发送方名、接收方名以及主题中使用其他的字符。
首部字段中可以包含编码字(coded word),其格式如下:
=?charset?encoding?encoded-text?=
charset表示字符集,有效值时us-ascii和iso-8859-x。
encoding是一个单个字符用来指定编码方法,支持2个值:
◆Q:意思是引号中可打印的,目的是用于拉丁字符集。大多数字符作为NVT ASCII发送的。任何要发送的字符若第8位是1则被作为3个字符发送,第一个字符是"=",跟着两个16进制数,如0xe9,则发送3个字符"=E9",空格通常作为下划线或三个字符"=20"发送。
◆B:意思是以64为基数的编码。文本中的3个连续字节(24位)被编码为4个6位值,用于表示所有可能的6位值的64个NVT ASCII字符。当要编码的个数不是3的倍数时,等号被用作填充符。
(2)正文变化:通用Internet邮件扩充可以把结构置入正文,这就是MIME,即通用Internet扩充。MIME不要求任何扩充,
但加入了一些告知收件者正文结构的新标题,正文仍然可以用NVT ASCII发送,而不考虑邮件内容。MIME定义5个新标题:
Mime-version:当前版本是1.0
Content-Tyoe:内容类型是无格式ASCII文本,即Internet邮件的默认选择。可以为: text,multipart,message,application,image,audio,video。
Content-Transfer-Encoding:内容传送编码有5中:7bit(即NVT ASCII ),quoted-printable,base64,8bit,binary。
Content-ID:
Content-Description:
- ››TCP超时/丢失重传
- ››iphone图片拉伸的几种方法
- ››iphone正则表达式的简单使用
- ››iPhone开发Unresolved Symbols CAKeyframeAnimati...
- ››IPhone开发-“此证书是由未知颁发机构签名”解决方...
- ››IPhone开发-整合私钥和证书,生成.p12文件
- ››iPhone应用开发-UIPickerView选取器详解
- ››iphone 获取屏幕的宽度和高度
- ››iPhone读取工程包中的二进制文件
- ››iPhone新手机 不挂YouTube APP
- ››iPhone 获取指定格式的时间和日期
- ››IPad使用UIModalPresentationFormSheet时隐藏键盘...
更多精彩
赞助商链接