您现在的位置是:首页>后端开发后端开发

.net使用SSL加密,465端口发送邮件

胡小浪2018-12-22【后端开发】1563人已围观

简介由于服务器供应商一般都不开放25端口,我们在开发项目的时候有时候有不得不用到邮件发送,下面我介绍一下怎样使用465端口发送邮件

基本实现方式与连接25端口发送邮件一致,但改为SSL加密协议后,需要特别注意:

  • 将连接外部邮箱服务器的端口改为邮箱服务器的SSL加密端口(通常是465端口),具体配置可以与邮箱服务商咨询。
  • 在程序中启用SSL加密协议连接邮箱服务器。

.NET源代码

 /// <summary>

        /// 通过465端口发送邮件  阿里云帮助文档地址:https://help.aliyun.com/knowledge_detail/60692.html#NET

        /// </summary>

        /// <param name="from">发件者邮箱地址</param>

        /// <param name="to">收件人收箱地址</param>

        /// <param name="title">邮件主题</param>

        /// <param name="body">邮件正文</param>

        /// <param name="smtp">Smtp服务器</param>

        /// <param name="username">发件账号</param>

        /// <param name="password">发件密码</param>

        /// <returns></returns>

        public static bool SendMail(string from, string to, string title, string body, string smtp, string username, string password)

        {

            System.Web.Mail.MailMessage mmsg = new System.Web.Mail.MailMessage();

            //邮件主题

            mmsg.Subject = title;

            //指定邮件格式为html格式

            mmsg.BodyFormat = MailFormat.Html;

            //邮件正文

            mmsg.Body = body;

            //正文编码

            mmsg.BodyEncoding = Encoding.UTF8;

            //优先级

            mmsg.Priority = System.Web.Mail.MailPriority.Normal;

            //发件者邮箱地址

            mmsg.From = from;

            //收件人收箱地址

            mmsg.To = to;


            mmsg.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate", "1");

            //用户名

            mmsg.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendusername", username);

            //密码

            mmsg.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendpassword", password);

            //端口 

            mmsg.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpserverport", "465");

            //是否ssl

            mmsg.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpusessl", "true");

            //Smtp服务器

            System.Web.Mail.SmtpMail.SmtpServer = smtp;

            try

            {

                SmtpMail.Send(mmsg);

                //Response.Write("发送成功");

            }

            catch (Exception ex)

            {

                //Response.Write("发送失败,失败原因:" + ex.Message);


                return true;

            }


            return true;

        }

推荐百度云下载dome:https://pan.baidu.com/s/1T2MdyzvhQ-gd9Lv-OcMwIg  


Tags: .Net邮件发送

扫一扫分享本页

很赞哦! (1)