javascript - node-imap,邮件事件在收到多封电子邮件时不起作用
问题描述
我正在使用 node-imap 库来阅读邮件,邮件事件在初始化后第二次没有被触发。
下面是我的代码
此外,它给出错误:在第一次检索电子邮件后将 ECONNRESET 读取为错误。
期望 imap.once('mail', function (x) { } 应该在邮箱中出现任何新邮件时调用。
imap.once('mail', function (x) { } 没有被触发。
此事件仅在我运行 node.js 文件时触发一次,之后它不会被触发。请建议。
imap.connect();
imap.once('ready', function () {
console.log("Imap ready");
readMail();
});
function readMail() {
openInbox(function (err, box) {
imap.once('mail', function (x) {
console.log("New Mail...", x);
executeMail(err);
});
});
}
}
根据评论在下面尝试过,但仍然无效。
function readMail() {
openInbox(function (err, box) {
imap.once('mail', function (x) {
console.log("New Mail...", x);
executeMail(err);
imap.connect();
});
});
}
}
解决方案
我想你不应该imap.on
使用imap.once
imap.on("mail", mail => {
console.log("New mail arrived 1");
});
上面的代码对我有用。
推荐阅读
- hyperledger-fabric - 如何设置超级账本结构浏览器 | Azure Kubernetes 服务 (AKS) 上的 Hyperledger Fabric 联盟
- android - 与 gradle 6.1.1 一起使用时,Android Studio 4.0 更新给出了 lint 基础结构错误
- spring-boot - 无法在 thymeleaf th:each 方法中获取数组
- pytorch - 如何有条件地使用 torch.cuda.device()
- java - 如何使用 Selenium 和 Java 在 https://www.phptravels.net/home 的聊天机器人表单输入字段中输入文本
- image - 存储许多缩略图的有效方法
- elasticsearch - 从 ES 7.8 开始,每个 Elasticsearch 索引的默认分片和副本数是多少?
- php - PB / SQLite3 连接表
- android - Flutter:可通过卡片和保证金解雇
- mysql - 在以下情况下, < 比较与 != 有何不同?