Моя цель - использовать IMAP для извлечения и отображения электронных писем (помещаемых в массив, называемый «электронная почта») из учетной записи Gmail, если в строке темы задана строка c. Я впервые использую Node-IMAP. Пока что я могу вернуть все электронные письма, найденные во входящей почте, но как только я пытаюсь использовать imap.search
, он возвращает пустой массив. Я предполагаю, что что-то упустил, но не могу понять, что.
var email = [];
imap.once('ready', function() {
openInbox(function(err, box) {
if (err) throw err;
imap.search([[ 'HEADER', 'SUBJECT', 'ABCDEFG'] ], function(err, results) {
if (err) throw err;
var f = imap.seq.fetch(results, {
bodies: 'HEADER.FIELDS (FROM SUBJECT DATE)',
});
f.on('message', function(msg, seqno) {
var prefix = '(#' + seqno + ') ';
msg.on('body', function(stream, info) {
var buffer = '';
stream.on('data', function(chunk) {
buffer += chunk.toString('utf8');
});
stream.once('end', function() {
email.push(prefix + inspect(Imap.parseHeader(buffer)));
});
});
});