nodejs, redis и mailparser не будут анализировать электронную почту

Я использую mailparser от andris ( https://github.com/andris9/mailparser). Я отправляю письмо через Redis в приложение nodejs. Почтовый анализатор по какой-то причине не может его проанализировать. Что может быть причиной проблемы?

Код для получения электронного письма от Redis. client является экземпляром node_redis Client. MailParser является почтовым парсером andris. Письмо в Redis отправляется через другой сервер, на канал которого я подписался. Отправленное электронное письмо, когда оно сохранено в текстовом файле и проанализировано с использованием andris' test.js, дает ожидаемый результат.

client.subscribe('email1');

client.on('message', function(channel, message){
    var Parser = new MailParser();
    Parser.on('headers', function(headers){
        console.log(headers.addressesTo[0].address);
    });
    Parser.feed(message);
    Parser.end();
});

Я нашел причину для этого. Вход, который я видел при получении, был \r\n преобразован в \ n

1 ответ

Вместо

 Parser.feed(message);

Я верю что ты хочешь

Parser.write(message);

Я не смог найти метод подачи в документации. Я использую функцию записи, и она работает. Сообщение является исходным неизмененным сообщением электронной почты, включая заголовки, текст и вложения.

Другие вопросы по тегам