判断SMTP邮件是否有IMF标头的最佳方法是什么?

时间:2012-02-27 20:56:23

标签: c# smtp

我正在编写一个SMTP解析器,它需要处理标准的smtp以及从我无法控制的系统发送的SMTP消息,这些消息不包含IMF标头。例如,

标准SMTP与IMF标题:

From: "Blah blah blah" blah@bluhblah.blah
To: Derp@dederp.com
Subject: This is a standard SMTP message
Date: Mon, 5 Oct 2009 11:36:07 +0530
MIME-Version: 1.0
Content-Type: text / plain
Content-Language: en-us
Testing testing 1 2 3

Bastardized SMTP:

Testing testing 1 2 3

最好是在C#中,但任何语言都可以。 请不要猜测,我需要了解SMTP / IMF规范的人才能做出回应。我把它拿回来,推测你想要的一切。洛尔

2 个答案:

答案 0 :(得分:1)

除非你真的,真的想写自己的SMTP解析器;你会想要第三方图书馆帮忙。我们选择OpenPop。它运作良好,处理我们抛出的所有东西,并且仍然受到支持。

不,我与他们无关。

答案 1 :(得分:1)

几件事。

您不需要SMTP解析器,您需要Mime消息解析器。解析哑剧信息并非易事。有1000种破碎的消息格式,或者只是简单的奇怪格式,但仍然符合RFC2822(Mime消息)。

我建议只使用Mime消息解析器(来自codeproject或类似的源 - 如果你想要一个免费的),或者是商业产品。

然后,只需遍历标题即可查看它们是否符合您的规则。

- 戴夫
PS:因为我写了它,所以我偏爱aspNetMime。