当我使用带有邮箱(MIAB)电子邮件的 node-imap 模块创建 IMAP 连接时,几分钟后,我收到 ECONNRESET 错误。我想知道这是连接配置中的错误,还是来自 MIAB 服务器端的如果它空闲太久会断开连接。
这是我的 IMAP 连接配置:
{
port: 993,
tls: true,
authTimeout: 30000,
connTimeout: 30000,
keepalive: {
forceNoop: true,
},
tlsOptions: {
rejectUnauthorized: false,
},
}
这是我得到的错误:
Error: read ECONNRESET
at TCP.onStreamRead (internal/stream_base_commons.js:209:20) {
errno: -104,
code: 'ECONNRESET',
syscall: 'read',
source: 'socket'
}
我正在使用 mail-notifier 模块,它是 node-imap 模块的包装器。这是我在 IMAP 连接中注册事件的代码
const notifier = Notifier(imap);
notifier
.on("end", () => notifier.start())
.on("connected", () => {
console.log(`Connected IMAP: ${user}`);
})
.on("mail", (mail) => {
this.onMail(mail, user);
})
.on("error", (e: any) => {
console.log(`IMAP error: ${user}, time: ${Date.now()}`);
console.log(e);
setTimeout(() => {
notifier.stop();
notifier.start();
}, 5000);
})
.start();