是否可以检测IMAP协议版本?

时间:2014-02-21 10:47:56

标签: node.js imap

我正在使用Nodejs为电子邮件客户端建立IMAP IDLE连接。在建立连接时是否有可能检测到IMAP协议版本。

2 个答案:

答案 0 :(得分:7)

今天所有IMAP服务器都运行相同的版本4rev1。版本1,2,3和4早已不复存在。

此外,今天所有服务器都支持一个或多个扩展。 CAPABILITY命令返回扩展列表。对于gmail:

openssl s_client -connect imap.gmail.com:993 -crlf

a capability
* CAPABILITY IMAP4rev1 UNSELECT IDLE NAMESPACE QUOTA ID XLIST CHILDREN X-GM-EXT-1 XYZZY SASL-IR AUTH=XOAUTH AUTH=XOAUTH2 AUTH=PLAIN AUTH=PLAIN-CLIENTTOKEN
a OK Thats all she wrote! j14mb28178795bkd

所以gmail支持IDLE和大约十几个扩展。

答案 1 :(得分:4)

IMAP使用CAPABILITY命令请求有关服务器功能的信息。这比版本号更有用,因为它允许客户端检查它可能需要的IMAP基本协议的特定扩展。