我正在使用System.Net.Mail电子邮件。在代码中,我将电子邮件的返回路径设置如下:
string sReturnPath = ConfigurationManager.AppSettings["ReturnPath"].ToString();
if (sReturnPath.Length > 0) {
msg.Headers.Add("Return-Path", sReturnPath);
}如果传递失败,它应该转到return-path,但它没有,即使我可以看到电子邮件的return-path的头部来自我指定的配置文件。该电子邮件被退回给发件人。
有什么想法吗?
发布于 2012-01-19 00:23:30
你使用了一个稍微错误的方法。简单邮件传输协议(RFC 2821)表示:
发出邮件的系统不应发送以下邮件
已包含返回路径标头。SMTP服务器执行
中继函数不能检查消息数据,尤其不能
到确定是否存在返回路径报头所需的程度。
如果要将邮件返回到From:字段中指定的地址以外的地址,则应在邮件信封中设置该地址,而不是在邮件头中设置该地址。您可以通过设置Sender属性来实现此目的:
MailMessage msg = new MailMessage();
msg.Sender = new MailAddress("not-deliviered@sample.org", "Sam1");https://stackoverflow.com/questions/8912861
复制相似问题