我在使用mailparser
时遇到了一个小问题。当我尝试查看主题内容时,它说是undefined
。
我的代码看起来像这样:
var fs = require("fs");
var socket = fs.createWriteStream('./outputmail.eml');
socket.on("end",function()
{
connection.loginfo("end------->");
});
connection.transaction.message_stream.pipe(socket, {}); // haraka related
var mailparser = new MailParser();
mailparser.on("end", function(mail_object){
connection.loginfo("----------SUBJECT-------------------->:", mail_object.subject);
});
fs.createReadStream("./outputmail.eml").pipe(mailparser);
我在Haraka(http://haraka.github.io)中使用
mailparser
。这样做的全部目的是,我想解析收到的每封邮件,并将标语/图像/任何内容添加到邮件正文中。如果您知道为什么出现此消息,请告诉我。 最佳答案
如果那是代码,则很可能您已在写入文件之前开始读取文件。由于这两个库都支持流,因此您应该能够将message_stream直接通过管道传递到mailparser,即。
var mailparser = new MailParser();
mailparser.on("end", function(mail_object) {
console.log(mail_object);
});
connection.transaction.message_stream.pipe(mailparser, {});
另一个原因很可能自然是电子邮件中没有主题。