zoukankan      html  css  js  c++  java
  • System.net.mail发送电子邮件

    之前做的实现发送邮件的功能,基于System.net.mail,在本地测试是可以发送邮件的,发布到服务器上发送不了邮件,后来发现STMP默认使用25端口收发邮件,服务器封掉25了端口,导致发送邮件失败。

    后来改用了587端口发送电子邮件。

    public static bool SendEmail587(string email, string validateCode)
            {
                bool result = true;
                try
                {
                    string eMailSmtpClient = CommFunction.GetAppSetting("EMailSmtpClient"); //邮箱服务地址
                    string eMailAccount = CommFunction.GetAppSetting("EMailAccount");//邮箱账号
                    string eMailPassword = CommFunction.GetAppSetting("EMailPassword");//邮箱密码
                    string eMailName = CommFunction.GetAppSetting("EMailName");
                    string eMailSubject = CommFunction.GetAppSetting("EMailSubjectValidateCode");
                    string eMailBodyChinese = CommFunction.GetAppSetting("eMailBodyValidateCode_Chinese");
                    string eMailBodyEnglish = CommFunction.GetAppSetting("eMailBodyValidateCode_English");

                    MailMessage msg = new MailMessage();
                    msg.To.Add(email);
                    msg.From = new MailAddress(eMailAccount, eMailName, Encoding.UTF8);
                    msg.Subject = eMailSubject;
                    msg.SubjectEncoding = System.Text.Encoding.UTF8;
                    msg.Body = string.Format(string.Format("<p>{0}</p><p>{1}</p>", eMailBodyChinese, eMailBodyEnglish), validateCode); ;
                    msg.BodyEncoding = System.Text.Encoding.UTF8;
                    msg.IsBodyHtml = true;

                    SmtpClient client = new SmtpClient();
                    client.Credentials = new System.Net.NetworkCredential(eMailAccount, eMailPassword);
                    client.Port = 587;
                    client.Host = eMailSmtpClient;
                    client.EnableSsl = false;
                    client.Send(msg);
                    msg.Dispose();
                    client.Dispose();
                }
                catch (Exception ex)
                {
                    HttpRequestResult.fResultCode = HttpStatusCode.BadRequest;
                    HttpRequestResult.fResultMsg = ex.Message;
                    result = false;
                }
                return result;
            }

  • 相关阅读:
    常用浏览器内核
    点透问题及解决
    移动端click延迟和tap事件
    CommandoVM-虚拟机映像文件 | VM打开直接用
    Crackme006
    CrackMe005-下篇 | 逆向破解分析 | 160个CrackMe(视频+图文)深度解析系列
    拼多多被薅-谈网络安全中最后的屏障
    一次VB汇编中看-溢出计算
    CM005-逆向分析过程(上篇)
    CrackMe-005全破详解(图文+源码)--上篇
  • 原文地址:https://www.cnblogs.com/spilledlight/p/9257116.html
Copyright © 2011-2022 走看看