POP3 CAPA UIDL命令的作用是什么?

11

POP3 CAPA UIDL命令的作用是什么?

6个回答

12

该代码检查pop3服务器是否支持UIDL指令(即是否具备该命令的CAPAbility)。

响应应该是"+OK"或"-ERR",具体取决于服务器是否支持UIDL指令。

如果服务器支持UIDL指令,则UIDL指令会返回每个邮件的唯一标识符,因此客户端可以准确地识别每个邮件。

另请参阅:rfc2449(CAPA)和rfc1939(POP3)。


11

CAPA是一个命令。UIDL是另一个命令。您可以使用telnet连接到POP服务器的110端口来尝试它们 ( telnet:pop.example.com:110 )。当telnet建立TCP连接后,POP服务器应该发送类似于“+OK Microsoft Exchange POP3服务已准备就绪。”的消息。您可以输入“CAPA”并按回车键,然后POP服务器应该响应一个支持的功能列表(在会话状态之前登录)。您可以通过发送"user @name@ " 并按回车键进行登录,其中@name@将更改为您的POP帐户名。然后输入"pass @pw@"并按回车键,其中@pw@是您的密码。这将以明文形式将您的密码发送到网络上,因此嗅探链接的人很容易看到您的密码。您的POP服务器可能需要其他更安全的登录方式。(不要在上面的示例中输入双引号)。

假设一切顺利,现在会话已建立并处于不同的状态,您可以再次尝试“CAPA”。支持的功能列表可能相同,也可能不同,具体取决于服务器配置。此时,您可以尝试输入“STAT”并按回车键。POP服务器应返回“+OK @x@ @y@”,其中@x@是邮件数量,@y@是所有邮件的字节数。现在您可以尝试输入“UIDL”并按回车键。POP服务器将返回一个带有“@n@ @uid@”的列表,其中@n@是邮件编号,@uid@是POP服务器分配的唯一标识符。

输入QUIT并按回车键以结束会话并关闭TCP连接。


8

UIDL功能表示支持可选的UIDL命令。

POP3服务器可以为每个传入邮件分配一个唯一的编号。这允许在将邮件下载到用户后将其保留在服务器上。邮件客户端和POP服务器都必须支持此功能。


2
值得一提的是,UIDL和CAPA都是可选扩展功能,支持UIDL可以有或没有实现CAPA支持。 - Jessica Brown

5
根据 POP3 RFCUIDL 命令将为消息提供唯一标识符。
RFC 进一步说明:

消息的唯一标识符是一个任意的由服务器确定的字符串,由 0x21 到 0x7E 范围内的一个到 70 个字符组成,它在邮件存储器中唯一标识一条消息,并在会话之间保持不变。

POP3 扩展 RFC 表明,CAPA 命令允许查询服务器的capabilities。
因此,使用 CAPA UIDL 命令可查看服务器是否支持唯一标识符。

1

UIDL 是 RFC 1939 中描述的唯一 ID 列表能力。它意味着服务器支持为每个消息生成唯一的ID,以便客户端更容易地处理留在服务器上的消息。


0

返回POP3服务器上一条消息的唯一标识符。 可能的响应:+OK或-ERR


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接