Yon*_*yer 4 email-parsing node.js
我想解析一封电子邮件并找到了 mailparser 包。(使用“npm install mailparser”安装它)。我正在使用 Windows 7。我正在尝试运行这个简单的示例,但没有调用“结束”事件,也没有看到任何日志。这是我运行的:
const MailParser = require("mailparser").MailParser;
const mailparser = new MailParser({debug: true});
let email = "From: 'Sender Name' <sender@example.com>\r\n"+
"To: 'Receiver Name' <receiver@example.com>\r\n"+
"Subject: Hello world!\r\n"+
"\r\n"+
"How are you today?";
// setup an event listener when the parsing finishes
mailparser.on("end", function(mail_object){
console.log("From:", mail_object.from); //[{address:'sender@example.com',name:'Sender Name'}]
console.log("Subject:", mail_object.subject); // Hello world!
console.log("Text body:", mail_object.text); // How are you today?
});
// send the email source to the parser
mailparser.write(email);
mailparser.end();Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?谢谢
根据fine manual,只有两个事件:headers和data。
也许使用simpleParser而不是较低级别(事件驱动)最简单MailParser:
const simpleParser = require('mailparser').simpleParser;
...
simpleParser(email).then(function(mail_object) {
console.log("From:", mail_object.from.value);
console.log("Subject:", mail_object.subject);
console.log("Text body:", mail_object.text);
}).catch(function(err) {
console.log('An error occurred:', err.message);
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5414 次 |
| 最近记录: |