C#通过QQ邮箱发送邮件可用于注册验证
简单写一下C#怎么用QQ邮箱发邮件
第一步登录你的QQ邮箱点击左上角设置——账户——往下滑找到 POP3/SMTP服务,如图
申请开启,通过后会给你一个授权码,格式是这样的(igtsti*********bja),就是一串字母,保存下来,从第三方发送验证码的时候要用这个授权码登录
然后打开visual studio ,新建一个项目,什么项目随你便,我用的asp.net,把方法写在类里封装了起来
发送邮件有两种方式,一个是通过25端口,一个是通过465端口,需要提醒的是25端口已经被各大服务器厂商屏蔽了,也就是说你只能在本地发,部署到服务器就发不了了
所以如果要部署到服务器的话请使用465端口,但是在这里我会将25端口和465端口的实现方法都写出来,具体实现方法如下
/// <summary> /// 发送验证码至邮箱 /// </summary> /// <param name="reciver">接收者</param> /// <param name="content">内容</param> public static void GetYZM(string reciver, string content) { #region 使用端口25发送邮件,已被阿里云屏蔽,换成465端口//这里是你刚才申请的邮箱号 var emailAcount = "发邮件的邮箱"; //这里是刚刚得到的授权码 var emailPassword = "你的授权码"; //new一个MailMessage MailMessage message = new MailMessage(); //设置发件人,发件人需要与设置的邮件发送服务器的邮箱一致 MailAddress fromAddr = new MailAddress("发邮件的邮箱"); message.From = fromAddr; //设置收件人,可添加多个,添加方法与下面的一样 message.To.Add(reciver); //设置抄送人,这个无所谓 //message.CC.Add("1000000000@qq.com"); //设置邮件标题 message.Subject = "SunBoy科技"; //设置邮件内容 message.Body = content; //设置邮件发送服务器,服务器根据你使用的邮箱而不同,可以到相应的 邮箱管理后台查看,下面是QQ的 SmtpClient client = new SmtpClient("smtp.qq.com", 25); //设置发送人的邮箱账号和密码 client.Credentials = new NetworkCredential(emailAcount, emailPassword); //启用ssl,也就是安全发送 client.EnableSsl = true; //发送邮件 client.Send(message);#endregion }
上边这是25端口发邮件的代码,收件人和内容当做参数传进去就行了
public static void GetYZM(string reciver, string content)
{
//使用465端口发送邮件
var emailAcount = "发邮件的邮箱";
var emailPassword = "你的授权码";
MailMessage mmsg = new MailMessage();
//验证
mmsg.Subject = "SunBoy账号验证";//邮件标题
mmsg.To = reciver;//收件人地址
mmsg.From = "发邮件的邮箱";//发件者地址
mmsg.Body = content;//邮件内容
mmsg.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate", "1");
mmsg.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendusername", emailAcount);//发件人邮箱地址
mmsg.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendpassword", emailPassword);//发件人邮箱密码
mmsg.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpserverport", 465);//端口
mmsg.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpusessl", "true");//ssl加密
SmtpMail.SmtpServer = "smtp.qq.com";
SmtpMail.Send(mmsg);
}
这个是465端口发邮件的方法,没做太多注释,跟25端口那个差不多,可以直接整个copy走的,把邮箱跟授权码改成你自己的就行了
嗯,就这么多了。祝你成功
原创的,偷走也不怪你,注明出处也行,随便吧