1

我正在使用 andris 的 mailparser(https://github.com/andris9/mailparser)。我正在通过 redis 向 nodejs 应用程序发送电子邮件。由于某种原因,邮件解析器无法解析它。什么可能导致问题?

从 redis 获取电子邮件的代码。client是 node_redis 客户端的一个实例。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

4

1 回答 1

2

代替

 Parser.feed(message);

我相信你想要

Parser.write(message);

我在文档中找不到feed方法。我正在使用write功能,它正在工作。该邮件是原始未更改的电子邮件,包括标题、正文和附件。

于 2012-02-09T20:00:24.520 回答