Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/email/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何阅读电子邮件';带Chilkat和Node.js的正文文本?_Node.js_Email_Imap_Chilkat - Fatal编程技术网

如何阅读电子邮件';带Chilkat和Node.js的正文文本?

如何阅读电子邮件';带Chilkat和Node.js的正文文本?,node.js,email,imap,chilkat,Node.js,Email,Imap,Chilkat,因此,我目前有一个node.js项目,它使用chilkat来阅读电子邮件。目前,它完成了我要查找的大部分内容,返回了每封电子邮件的主题、标题和电子邮件地址。我唯一无法返回的是正文。当前,当我尝试这样做时,它返回一个空的null结果 我知道问题为什么会发生。这是因为在打印结果之前,我只在此处获取电子邮件标题信息: var bundle; bundle = imap.FetchHeaders(messageSet); if (imap.LastMethodSuccess == false) {

因此,我目前有一个node.js项目,它使用chilkat来阅读电子邮件。目前,它完成了我要查找的大部分内容,返回了每封电子邮件的主题、标题和电子邮件地址。我唯一无法返回的是正文。当前,当我尝试这样做时,它返回一个空的
null
结果

我知道问题为什么会发生。这是因为在打印结果之前,我只在此处获取电子邮件标题信息:

var bundle;
bundle = imap.FetchHeaders(messageSet);
if (imap.LastMethodSuccess == false) {

    console.log(imap.LastErrorText);
    return;
}

var i = 0;
while (i < bundle.MessageCount) {
    // email: Email
    var email;
    email = bundle.GetEmail(i);

    console.log(email.GetHeaderField("Date"));
    console.log(email.Subject);
    console.log(email.From);
    console.log(email.Body);
    console.log("--");

    i = i+1;
}
var束;
bundle=imap.FetchHeaders(messageSet);
if(imap.LastMethodSuccess==false){
console.log(imap.LastErrorText);
返回;
}
var i=0;
而(i

因此,我知道应该在这里进行修复,但就我的一生而言,我找不到什么应该放在
imap.FetchHeaders()
部分。

使用
FetchBundle()
代替
FetchHeaders()

建议使用or。您尝试过使用
FetchBundle()
代替
FetchHeaders()
?在IMAP中只获取头的意义在于,您的客户机程序可以检查它们,然后决定是否获取整个消息。在这个应用程序中,您似乎不需要那么复杂。@O.Jones谢谢!确实是这样。还有,是的,你说得有道理。在前进的道路上,我必须牢记这一点,但现在我很高兴我有这么多的工作要做。出于好奇,在chilkat完成它的工作之后,使用不同的库获取整个电子邮件会更好吗?