POP3扩展机制( 五 )


于所有环境下可以在服务器上停留的最小天数 。
例:
EXPIRE5USER
EXPIRE30
EXPIRENEVER
EXPIRE0
第一个例子表明服务器在五天后删除消息 , 但是这个期限因用户而异 , 并且通过在
TRANSACTION状态下发送另一个CAPA命令可以获得一个更精确的值 。第二个例子表明服务
器在30天后删除消息 。在第三个例子中 , 服务器声明它将不删除消息 。第四个例子说明站
点不答应消息留在服务器上 。
6.8UIDL功能
CAPA标记:UIDL
参数:无
附加命令:UIDL
受影响的标准命令:无
声明的状态/可能的不同:两者/无
命令有效的状态:TRANSACTION
规范参考:[POP3]
讨论:UIDL功能表明支持可选UIDL命令 。
6.9IMPLEMENTATION功能
CAPA标记:IMPLEMENTATION
参数:字符串 , 给服务器提供实现信息
附加命令:无
受影响的标准命令:无
声明的状态/可能的不同:两者(或者只有TRANSACTION)/无
命令有效的状态:n/a
规范参考:此文档
讨论:识别出特定服务器的实现(比如 , 在登陆时)经常是很有用的 。通常使用欢迎标
记 , 但是必须猜测字符串是不是一个实现ID 。
IMPLEMENTATION功能的参数由一个或更多的标志服务器的标记组成 。(注重因为CAPA
响应标记参数用空格分隔 , 因此IMPLEMENTATION功能的参数不带参数可能很方便 , 这样的
话它就是一个单独的标记了 。)
一般地 , 服务器在两种状态下声明IMPLEMENTATION 。但是 , 某个服务器可能选择只在
TRANSACTION状态下声明 。
服务器可能在欢迎标记和IMPLEMENTATION功能中都包括有实现ID 。
客户端禁止更改它们基于服务器实现的行为 。相反地 , 服务器和客户端应该在私有扩展
上达成一致意见 。
7.POP3的未来扩展
POP3的未来扩展大体来说是令人气馁的 , 因为POP3的有效性是建立在它的简洁性基础
上的 。POP3的本意是作为一个download-and-delete协议;邮件存取功能可以在IMAP
[IMAP4]中获得 。任何为附加邮箱提供支持 , 或者答应向服务器上传消息 , 或者偏离了POP
的download-and-delete模型的扩展 , 都是非常令人气馁的 , 因而不大可能被IETF标准批
准 。
客户端不能对基本的功能要求任何扩展 , 验证命令(APOP,AUTH[6.3节]和USER/PASS)
是个例外 。
第9节说明了附加功能是如何定义的 。
8.扩展POP3响应码
未扩展的POP3对大部分命令只能够说明是成功或是失败 。不幸的是 , 客户端经常需要
有关失败原因的更多信息 , 以便适当地从中恢复 。这在响应一个失败的登陆时非凡重要(有
许多客户端配置试图解码一个PASS命令结果的错误文本 , 以在“不能得到邮箱密码”和“破
坏性登陆”之间区别) 。
这一规范修定了POP3标准 , 使它答应一个可选的响应码 , 此响应码包含在方括号里面 ,
位于一个“ OK”或“-ERR”响应中的可读部分的开始 。支持这个扩展的客户端能在向用户
显示可读文本之前删除方括号里面的信息 。紧接着左方括号字符的是一个响应码 , 它由客户
端用一种大小写不敏感的方式来进行解释 。
响应码是分等级的 , 一个“/”分隔不同等级的错误细节 。客户端必须忽略不知道的关
于响应码的等级细节 。这一点很重要 , 因为它是在将来为响应码提供更多细节的必要条件 。
第3节用[ABNF]描述了响应码 。
假如一个服务器支持扩展的响应码 , 它通过在CAPA响应中包含RESP-CODES的方式来

推荐阅读