gpt4 book ai didi

node.js - Node imap 尝试更新标志 : Error: Command received in Invalid state.

转载 作者:太空宇宙 更新时间:2023-11-03 23:29:23 24 4
gpt4 key购买 nike

提交这个问题及其答案是因为 SA(以及 Google)对此非常无助。

我需要删除收件箱中的所有邮件。为了清晰起见,删除了下面不相关的行:

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

imap.once('ready', function() {
openInbox(function(err,box){
if (err) throw err;
var f = imap.seq.fetch('1:*', {
bodies: 'HEADER.FIELDS (FROM)',
struct: true
});
f.on('message', function(msg, seqno){
console.log('Message #%d', seqno);

imap.seq.addFlags(seqno, 'Deleted', function(err){
console.log(err);
});

});
f.once('end', function(){
imap.end();
});
});
});

imap.connect();

一切看起来都不错,当我用 console.log 填充它时,我发现它读取电子邮件的效果很好。一切看起来都应该很好,但我明白:

{ [Error: Command received in Invalid state.] textCode: undefined, source: 'protocol' }

最佳答案

问题是您以只读模式打开了收件箱。这就是第二个参数中的“true”:

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

将其更改为

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

突然间一切都会正常了。

关于node.js - Node imap 尝试更新标志 : Error: Command received in Invalid state.,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39981120/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com