我试图了解普通身份验证如何在IMAP服务器上运行。 我在JavaScript(Node.JS)中实现了一个简单的IMAP服务器。 我尝试使用Mozilla Thunderbird登录,但我无法通过连接的AUTHENTICATION部分。
这就是服务器和客户端之间的通信方式:
C: 1 capability
S: * CAPABILITY IMAP4rev1 SASL-IR AUTH=PLAIN
S: 1 OK - CAPABILITY completed
C: 2 authenticate PLAIN
S: +
到目前为止,AUTHENTICATE处理程序:
function authenticate() {
socket.write('+ ')
}
如果我理解正确,Thunderbird应该给我发送一条消息,例如'\ 0login \ 0password',但它没有做任何事情,它停留在'Mail for [email protected]:发送登录信息......'
响应,甚至是持续响应,需要一个新的界限:
socket.write('+ Go ahead\r\n')