有没有可能检测IMAP协议版本?

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

今天所有的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和大约十多个扩展。

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