【发布时间】:2012-09-28 23:09:53
【问题描述】:
我正在尝试使用以下代码在 C# 中使用 gmail SMTP 发送电子邮件
MailMessage message = new MailMessage();
message.To.Add("my email");
message.Subject = "subject";
message.From = new MailAddress("any email");
message.Body = "body";
message.Attachments.Add(new System.Net.Mail.Attachment(path));
SmtpClient smtp = new SmtpClient("smtp.gmail.com", 587);
smtp.EnableSsl = true;
smtp.DeliveryMethod = SmtpDeliveryMethod.Network;
smtp.UseDefaultCredentials = false;
smtp.Credentials = new System.Net.NetworkCredential("my user", "my pass");
smtp.Send(message);
当我收到电子邮件时,FROM 字段中会填入my user。我使用UseDefaultCredentials 作为false。当我查看结果时,FROM 字段填充有my user。 FROM字段不应该填写any email吗?如何使用any email 作为发件人发送电子邮件?
【问题讨论】:
-
我认为这是 GMail 控制其 SMTP 服务使用的一种方式。如果有人可以通过 GMail 向其他人发送邮件,垃圾邮件发送者就会蜂拥而至。这样,所有“代表您”发送的电子邮件都来自您(=“我的用户”)
-
我已经在一个 JAVA 程序中做到了这一点......很多年前! :(
-
您是否有机会检查您收到的电子邮件的完整来源?它应该有“发件人:任何电子邮件”和“发件人:我的用户”。您正在查看电子邮件的应用程序可能会将发件人显示为发件人,并导致混淆。
标签: c# gmail smtpclient