【问题标题】:Sending email with a custom envelope sender (VERP)使用自定义信封发件人 (VERP) 发送电子邮件
【发布时间】:2012-04-26 06:40:26
【问题描述】:

我正在编写一个服务器,它将代表我的客户向许多收件人发送电子邮件。

电子邮件必须来自客户的电子邮件地址 (client@example.org),但我想通过 VERP 自动处理退回邮件。基本上,电子邮件 From: 标头将是 client@example.org,但 SMTP 信封发件人 (MAIL FROM) 将是 unique-email-id@my-email-service.example.com .

我已经构建了一个多线程发送引擎,它使用内置的System.Net.Mail.SmtpClient 与收件人的 MX 服务器进行实际的 SMTP 对话。

很遗憾,SmtpClient 不允许您指定信封发件人——它只使用From: 地址。

我需要一个允许我指定 SMTP MAIL FROM 的替代方法。最好是一些不费吹灰之力的东西来替换SmtpClient

到目前为止,我看到的所有内容都是完整的 email suite(SMTP/POP3/IMAP/厨房接收器)。有哪些轻量级 SMTP 库可用?

【问题讨论】:

    标签: c# smtp verp


    【解决方案1】:

    System.Net.Mail.SmtpClient 在内部使用mailMessage.Sender ?? mailMessage.From 作为信封MAIL FROM 信封发件人。

    不幸的是,虽然您可以使用 Sender 属性来指定信封 MAIL FROM 信封发件人(使用 mailMessage.Sender 属性),但 SmtpClient 还将添加一个 Sender: unique-email-id@domain.com 标头。

    使用此 Sender 标头,电子邮件客户端会显示来自unique-email-id@domain.com on behalf of John Doe <doe@domain.com> 的发送

    我发现没有像样的开源 Smtp 库支持这个功能——即使 Mono 的 SmtpClient 也缺少这个功能。一些支持 VERP 的库:

    PS:请随时为 VERP 功能请求投票:http://visualstudio.uservoice.com/forums/121579-visual-studio/suggestions/3800792-smtpclient-should-allow-to-specify-the-envelope-se

    相关问题:How can I implement VERP (Variable envelope return path) in .NET?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-02-08
      • 1970-01-01
      • 2021-01-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多