发送匿名电子邮件 C#
Posted
技术标签:
【中文标题】发送匿名电子邮件 C#【英文标题】:Send anonymous emails C# 【发布时间】:2012-02-15 19:20:43 【问题描述】:您好,我想使用 c# 向我的用户发送密码验证,并且我希望保护我的邮箱被垃圾邮件。我该怎么做?
一直在尝试,但它不起作用:
SmtpClient smtpClient = new SmtpClient("smtp.gmail.com", 587);
smtpClient.EnableSsl = true;
smtpClient.Timeout = 10000;
smtpClient.DeliveryMethod = SmtpDeliveryMethod.Network;
smtpClient.UseDefaultCredentials = false;
smtpClient.Credentials = new NetworkCredential("login", "password");
MailMessage mailMsg = new MailMessage();
mailMsg.From = new MailAddress("noreply@mysite.com");
mailMsg.To.Add("user");
mailMsg.CC.Add("cc@ccServer.com");
mailMsg.Bcc.Add("bcc@bccServer.com");
mailMsg.Subject = "Subject";
mailMsg.Body = "BodyOfTheMailString";
smtpClient.Send(mailMsg);
Console.WriteLine("Mail sent");
我要发送这封电子邮件的用户,将我的 gmail 帐户作为发件人
【问题讨论】:
您可以选择任何您想要的发件人电子邮件 您不需要匿名电子邮件只是为了避免收到垃圾邮件。 【参考方案1】:更新:
您最初应该提到您正在使用 gmail 的 smtp。为了防止人们发送垃圾邮件,gmail 总是将 from 设置为您的电子邮件地址,无论您在 From 属性中写了什么。
将 MailMessage 上的 From 地址设置为“noreply@mysite.com”。
MailMessage mailMsg = new MailMessage();
mailMsg .From = "noreply@mysite.com";
mailMsg .To = "to@toServer.com";
mailMsg .Cc = "cc@ccServer.com"";
mailMsg .Bcc = "bcc@bccServer.com";
mailMsg .Subject = "Subject";
mailMsg .Body = "BodyOfTheMailString";
SmtpMail.Send(mailMsg );
【讨论】:
如果这不起作用,答案可能是配置您的 SMTP 服务器以正确处理用户noreply
。取决于您的设置。
它将我的 gmail 帐户设置为发送邮件的帐户
是的,我知道。正如我在更新的答案中所写,如果您使用的是 gmail 的 smtp,您将无法更改地址。
MailAddress ma = new MailAddress("noreply@mysite.com"); MailAddressCollection mac = new MailAddressCollection(); mac.Add("noreply@mysite.com");
工作【参考方案2】:
这不是 C# 的任务,也不是您的邮件正文:它是您的邮箱配置。
如果这只是用于电子邮件验证,您可以随时创建一个新电子邮件,如“service@domain.com”或“noreply@domain.com”来发送这些验证消息,然后将此邮箱设置为忽略传入的消息。
此外,如果您尝试使用未注册到服务器的电子邮件发送消息,服务器可能会拒绝您的请求。
【讨论】:
以上是关于发送匿名电子邮件 C#的主要内容,如果未能解决你的问题,请参考以下文章