通过 C# 发送邮件,而 Gmail 无法在线运行
本文关键字:Gmail 在线 运行 通过 | 更新日期: 2023-09-27 18:36:05
我正在尝试通过gmail发送邮件。当我在本地主机上进行测试时,我成功发送邮件,但是当我在线上传时,这不起作用。以下是我用于发送电子邮件的代码。请帮忙吗?
MailMessage mm = new MailMessage();
mm.From = new MailAddress("donotreply@gmail.com");
mm.Subject = "Test";
mm.To.Add(new MailAddress(email));
mm.Body = "Test";
mm.IsBodyHtml = true;
SmtpClient client = new SmtpClient("smtp.gmail.com", 587);
client.EnableSsl = true;
client.UseDefaultCredentials = true;
client.DeliveryMethod = SmtpDeliveryMethod.Network;
client.Credentials = new System.Net.NetworkCredential("donotreply@gmail.com", "password");
client.Send(mm);
你的问题看起来可以通过这个类似的StackOverflow问题来回答:
通过 Gmail 在 .NET 中发送电子邮件
如果这不能回答您的所有问题,请告诉我。
在上面的当前代码中,您首先设置:
client.UseDefaultCredentials = true
它告诉框架使用默认凭据,然后您继续定义自定义凭据:
client.Credentials = new System.Net.NetworkCredential("donotreply@gmail.com", "password");
当它尝试发送邮件时,它不会使用它,因为您已经告诉它使用上面两行的默认凭据。尝试设置
client.UseDefaultCredentials = false