【问题标题】:Get informed if a new mail arrives in node.js with IMAP [closed]如果有新邮件通过 IMAP 到达 node.js,则获得通知 [关闭]
【发布时间】:2014-01-26 14:28:06
【问题描述】:

我想在 node.js 中创建一个模块,如果有新邮件到达(使用 IMAP),它将通知我(通过事件)。到目前为止,我一直在使用 IMAP 模块示例代码,但有人可以帮助我进行下一步吗?非常感谢。

var Imap = require('imap'),
    inspect = require('util').inspect;

var imap = new Imap({
  user: 'mygmailname@gmail.com',
  password: 'mygmailpassword',
  host: 'imap.gmail.com',
  port: 993,
  tls: true,
  tlsOptions: { rejectUnauthorized: false }
});

function openInbox(cb) {
  imap.openBox('INBOX', true, cb);
}

imap.once('ready', function() {
  openInbox(function(err, box) {
    if (err) throw err;

/* ??? */


 });

});


imap.once('error', function(err) {
  console.log(err);
});

imap.once('end', function() {
  console.log('Connection ended');
});

imap.connect();

【问题讨论】:

  • 下一步是什么,这个问题太笼统了。您遇到的具体问题是什么?
  • 我想在有新消息到达时得到通知,然后让它的标题和内容出现在屏幕上。感谢您的关注!
  • 似乎用户想要创建一个电子邮件侦听器,只要有新邮件到达,它就会调用回调函数。
  • 这里是如何获取每封电子邮件的通知 ` imap.once('ready', function() { openInbox(function (err, box) { if (err){ throw err; } else{ imap.on('mail', function (num){ console.log("新消息到达:", num); }); } }); }); ` 然后使用 fetch 方法读取邮件
  • 当使用上面的 sn-p 时,“连接结束”消息只会触发!

标签: node.js email events imap


【解决方案1】:

阅读RFC 3501。在不了解 IMAP 协议的情况下,绝对不可能使用某些 IMAP 库来实现讲 IMAP 的客户端。

或者,寻找一些高级库,从你那里抽象出 IMAP 协议,并提供一些自己的统一 API。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-12-24
    • 2015-05-29
    • 2014-12-09
    • 1970-01-01
    • 2017-05-01
    • 1970-01-01
    • 1970-01-01
    • 2015-06-03
    相关资源
    最近更新 更多