Maple_he 2013-11-13 02:13 采纳率: 0%
浏览 829

mailbee插件怎么识别附件是包含在正文里的图片还是真实的附件

asp.net里 第三方插件MailBee插件怎么识别附件是包含在正文里的图片还是真实的附件

  • 写回答

1条回答

  • ChatGPTᴼᴾᴱᴺᴬᴵ 2024-03-20 23:15
    关注

    所有内容均由人工智能模型输出,其内容的准确性和完整性无法保证,不代表我的态度或观点。
    GLM-4在2024.02.27SuperCLUE基准得分榜单中排行第四https://www.superclueai.com/


    该回答引用GLM-4,仅提供参考,不保证完全正确
    目前为GLM-4(智谱清言)专栏,网页版本:未知(更新时间未知)
    如有图像,GLM-4将尝试识别您的图像
    MailBee 是一个用于处理电子邮件的 .NET 库,它提供了丰富的功能来处理电子邮件的发送、接收、解析等功能。在处理邮件时,邮件中可能包含两种类型的图片:一种是嵌入到邮件正文中作为 HTML 内容的一部分,另一种是作为独立的附件。


    要区分这两种类型的图片,你可以检查邮件的 MIME 结构。通常,嵌入的图片会在邮件的 HTML 部分通过 cid: URL 来引用,而作为附件的图片则会有独立的 Content-Disposition 标头,标记为 attachment


    以下是一个简单的示例,说明如何使用 MailBee 在 ASP.NET 中区分这两种类型的图片:

    using MailBee;
    using MailBee.ImapMail;
    using MailBee.Mime;
    // 创建 IMAP 对象并连接到服务器
    Imap imap = new Imap();
    imap.Server = "imap.yourserver.com";
    imap.Username = "yourusername";
    imap.Password = "yourpassword";
    imap.Connect();
    // 选择邮箱文件夹
    imap.SelectMailbox("Inbox");
    // 获取邮件列表
    MailMessage[] messages = imap.DownloadEntireMessages(imap.Messages.Count);
    // 遍历邮件列表
    foreach (MailMessage message in messages)
    {
        // 检查邮件中的每个部分
        foreach (MessagePart part in message.MessageParts)
        {
            // 检查是否是嵌入的图片
            if (part.ContentId != null && part.IsAttachment == false)
            {
                // 这部分是一个嵌入的图片
                Console.WriteLine("嵌入的图片: " + part.ContentId);
            }
            // 检查是否是附件
            else if (part.ContentDisposition != null && part.ContentDisposition.Contains("attachment"))
            {
                // 这部分是一个附件
                Console.WriteLine("附件: " + part.FileName);
            }
        }
    }
    // 断开连接
    imap.Disconnect();
    

    在这个示例中,我们首先连接到 IMAP 服务器,然后下载并遍历邮件列表。对于每封邮件,我们检查每个部分是否是嵌入的图片或附件。如果是嵌入的图片,ContentId 将不会为空,并且 IsAttachment 将为 false。如果是附件,ContentDisposition 将包含 "attachment"
    请根据你的实际需求调整此代码,并确保你有权访问所需的邮件账户和服务器。

    评论

报告相同问题?

悬赏问题

  • ¥50 永磁型步进电机PID算法
  • ¥15 sqlite 附加(attach database)加密数据库时,返回26是什么原因呢?
  • ¥88 找成都本地经验丰富懂小程序开发的技术大咖
  • ¥15 如何处理复杂数据表格的除法运算
  • ¥15 如何用stc8h1k08的片子做485数据透传的功能?(关键词-串口)
  • ¥15 有兄弟姐妹会用word插图功能制作类似citespace的图片吗?
  • ¥200 uniapp长期运行卡死问题解决
  • ¥15 latex怎么处理论文引理引用参考文献
  • ¥15 请教:如何用postman调用本地虚拟机区块链接上的合约?
  • ¥15 为什么使用javacv转封装rtsp为rtmp时出现如下问题:[h264 @ 000000004faf7500]no frame?