Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/cmake/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 节点Imap-是否关闭打开的框?_Node.js_Imap_Node Imap - Fatal编程技术网

Node.js 节点Imap-是否关闭打开的框?

Node.js 节点Imap-是否关闭打开的框?,node.js,imap,node-imap,Node.js,Imap,Node Imap,我正在使用连接到电子邮件服务器。我有大约20个用户,我为他们打开与服务器的连接,并监听新的电子邮件 问题在于,为了能够做到: imap.once('mail', function(numNewMsgs) { console.log(''); }); 你必须有一个打开的盒子。所以,我总是打开一个盒子,我从不关上。我的流程如下: function search(imap) { imap.openBox('INBOX', true, (err, box) => { imap.

我正在使用连接到电子邮件服务器。我有大约20个用户,我为他们打开与服务器的连接,并监听新的电子邮件

问题在于,为了能够做到:

imap.once('mail', function(numNewMsgs) {
  console.log('');
});
你必须有一个打开的盒子。所以,我总是打开一个盒子,我从不关上。我的流程如下:

function search(imap) {
  imap.openBox('INBOX', true, (err, box) => {

    imap.once('mail', function() {
      search(imap);
    });
    imap.search(someConditions, function(err, results) {
      //do some stuff, fetch or whatever
    })
  })

}
可以看出,当邮件事件触发时,我从内部调用搜索函数。然后我打开了一个盒子,我以前没关过

那么,最后一个问题是:这是出于某种原因造成的麻烦吗?如果是,我应该关闭邮箱,我将如何使用“邮件”活动?


@mscdex希望您能看到这一点。

当您打开另一个邮箱时,其中一个邮箱已经打开,在打开新邮箱之前,上一个邮箱会隐式关闭。如果打开新邮箱时出错,则不会打开任何邮箱(因为以前的邮箱仍处于关闭状态)。

不想用这个琐碎的问题向回购协议发送垃圾邮件。谢谢。