3

我有一个 C 代码,我通过 imap 发出 UID FETCH 1:* (FLAGS BODY[HEADER]) 命令获取收件箱中所有邮件的标题。由于特殊的身份验证要求,我不能使用像 vmime 或 libetpan 这样的标准 imap 库。我需要根据 RFC 822 解析邮件标头值。我们是否有一些 C/C++ 中的库/函数可以完成这项工作?

4

3 回答 3

4

模仿效果很好!它还负责处理非标准邮件标头。

于 2011-02-20T14:53:56.577 回答
2

下面是一个使用模仿的例子:

void MailServer::PrintMimeStructure(MimeEntity* pMe)
{
    Header& h = pMe->header();  

    if(h.hasField("subject"))
        cout << "<subject>" << h.field("subject").value() << "</subject>" << 
        endl;

    if(h.hasField("from"))
        cout << "<from>" << h.field("from").value() << "</from>" << 
        endl;
    if(h.hasField("to"))
        cout << "<to>" << h.field("to").value() << "</to>" << 
        endl;
    if(h.hasField("message-id"))
        cout << "<message-id>" << h.field("message-id").value() << "</message-id>" << 
        endl;

    if(h.hasField("date"))
        cout << "<date>" << h.field("date").value() << "</date>" << 
        endl;       
}

这是你需要的吗?希望能帮助到你!

于 2013-11-11T13:46:33.440 回答
1

很久以前,在遥远的星系中,我使用了 MIME++ 库,现在由 Hunny Software 支持:http ://www.hunnysoft.com/mimepp/

当时效果很好。

于 2011-02-11T05:29:54.063 回答