发送匿名电子邮件C#

本文关键字:电子邮件 | 更新日期: 2023-09-27 18:20:55

嗨,我想用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帐户作为发件人

发送匿名电子邮件C#

这不是C#的任务,也不是邮件的正文:它是您的邮箱配置。

如果这只是为了验证电子邮件,您可以创建一封新的电子邮件,如"service@domain.com"或"noreply@domain.com"用于发送这些验证消息,然后将此邮箱设置为忽略传入消息。

此外,如果您试图使用未注册到服务器的电子邮件发送消息,服务器可能会拒绝您的请求。

更新:

您最初应该提到您正在使用gmail的smtp。为了防止人们发送垃圾邮件,无论你在"发件人"属性中写了什么,gmail总是设置为从到你的电子邮件地址。

将MailMessage上的发件人地址设置为"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 );