Gmail发邮件

1、需求说明

在万网或者特别是阿里云的云服务器上,往往都是不开21端口,导致发邮件失败,另外如果是国外服务器,也需要换成465端口的Gmail。代码如下

        /// <summary>
        /// 发送邮件,成功返回True,失败返回
        /// </summary>
        /// <param name="toEmail">接收的邮箱</param>
        /// <param name="title">邮件主题</param>
        /// <param name="content">邮件内容</param>
        /// <returns></returns>
        public static bool SendEmail(string toEmail, string title, string content)
        {
 
            try
            {
                var Model = ConfigHelper.GetEmailConfig();
                System.Net.Mail.MailMessage _Mail = new System.Net.Mail.MailMessage();
                SmtpClient client = new SmtpClient(Model.SMTP, Model.Port.ToInt());
                // ssl
                client.EnableSsl = true;  // SSL安全连接一定要注意设为 true
                client.UseDefaultCredentials = false;//必须在client.Credentials=XXX前面
                // 你的邮件帐号
                client.Credentials = new System.Net.NetworkCredential(Model.Email, Model.Password);
                client.DeliveryMethod = SmtpDeliveryMethod.Network;
                // 发送邮件地址
                _Mail.To.Add(toEmail);
                // send mail from
                _Mail.From = new MailAddress(Model.Email);
                // send mail subject
                _Mail.Subject = title;
                // 是否为html格式
                _Mail.IsBodyHtml = true;
                // send mail content
                _Mail.Body = content;
                // 发送
                client.Send(_Mail);
                return true;
            }
            catch
            {
                return false;
            }
        }

1.1 必须使用ssl。即client.EnableSsl = true。
1.2 其中代码client.UseDefaultCredentials = false;必须要在client.Credentials = new System.Net.NetworkCredential(Model.Email, Model.Password);这句代码前面。
1.3 Gmail会阻止应用程序访问邮箱服务,发邮件的时候Gmail会发邮件给你,然后去设置下(https://www.google.com/settings/security/lesssecureapps)开启“允许安全性较低的应用”。
1.4 应用程序位置。服务器上打开浏览器并登录到Gmail。这使得Gmail了解到服务器及其IP地址属于您,它将允许您通过您的应用程序发送电子邮件。

上一篇:[工控安全][原创]施耐德某PLC模块用户密码相关漏洞


下一篇:推荐4个方便的Mac App邮件客户端,可将gmail带到您的桌面