【问题标题】:How to retrieve only new emails using POP3 protocol如何使用 POP3 协议仅检索新电子邮件
【发布时间】:2011-08-23 01:11:52
【问题描述】:

我正在使用 POP3 协议在我的 .NET 应用程序中检索我的电子邮件。我只需要阅读新电子邮件,但在许多博客中发现无法使用 POP3 仅检索“未见”或“新”邮件。真的吗?如果是这样,您能否帮助我了解 Outlook Express 如何使用 POP3 获取新邮件?

有什么方法可以标记电子邮件服务器本身中看到的邮件?或者请帮我找出一种使用 POP3 协议检索新邮件的方法。

【问题讨论】:

    标签: pop3


    【解决方案1】:

    只要您的邮箱没有在服务器上保留电子邮件副本,那么您就可以了,不必为此编写代码。

    通常,当电子邮件客户端从 POP3 邮箱访问电子邮件时,它们会被下载并从服务器中删除。

    交换完全是另一回事。

    干杯

    【讨论】:

      【解决方案2】:

      您必须将每封电子邮件的UIDL 存储在本地数据库中。当你想检查新邮件时,你在服务器上检索UIDLs,看看你是否已经在本地数据库中;如果没有,那就是新邮件。

      Outlook 使用相同的策略,顺便说一句(请参阅 this KB article)。

      【讨论】:

      • 如果在服务器上删除了一条消息,则意味着旧的UIDL将被再次使用,如果用于新的消息则不会被检索到,有什么句柄可以解决这个问题?
      • 我认为 UIDL 是唯一 id 并且它总是递增。因此,新电子邮件可能没有任何机会使用旧 UIDL。
      • 这在 uidl 是数字的情况下是可以的,但如果你的 uidl 是字符串(包括字母)。会错的
      猜你喜欢
      • 2012-10-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-04-17
      • 1970-01-01
      • 2016-08-21
      • 1970-01-01
      相关资源
      最近更新 更多