C#QQ邮箱验证
注意:
QQ郵箱的簡單郵件傳輸協議(SMTP)使用了SSL加密,必須啟用SSL加密、指定端口。
QQ郵箱POP3/SMTP服務默認是關閉的,需要開啟服務(設置=>賬戶=>開啟服務)。
QQ郵箱若有獨立密碼,需要獲取授權碼(設置=>賬戶=>生成授權碼)。
?
//我們隨便寫一個注冊頁面,用QQ郵箱驗證完成注冊
//效果圖
//后臺代碼
?
using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Mail;
using System.Text;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
public partial class QQYanZheng : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void Button2_Click(object sender, EventArgs e)
{
? ? ? ? MailMessage msg = new MailMessage(); ?//生成一個關于郵箱的類
? ? ? ? msg.To.Add(TextBox1.Text.Trim()); ? //文本框里的QQ郵箱 ?(即注冊人的郵箱)
? ? ? ? msg.CC.Add(TextBox1.Text.Trim()); ? //上同
? ? ? ? msg.From = new MailAddress("1******55.qq.com", "登錄驗證"); ? //第一個是發送驗證碼的QQ ?第二個參數是發送的標題
? ? ? ? msg.Subject = "登錄驗證";
? ? ? ? //標題格式為UTF8格式
? ? ? ? msg.SubjectEncoding = Encoding.UTF8;
? ? ? ?//隨機生成6位驗證碼
? ? ? ? ArrayList MyArray = new ArrayList();
? ? ? ?Random random = new Random();
? ? ? ?string str = null;
? ? ? ?int Nums = 6;
? ? ? ? while (Nums > 0)
? ? ? ?{
? ? ? ? ? int i = random.Next(1, 9);
? ? ? ? if (MyArray.Count < 6)
? ? ? {
? ? ? ? ? MyArray.Add(i);
? ? ? }
? ? ? ? ?Nums -= 1;
? ? ?}
? ? ? ? for (int j = 0; j <= MyArray.Count - 1; j++)
? ? ?{
? ? ? ?str += MyArray[j].ToString();
? ? }
? ?msg.Body = str; ?//str為6位隨機數
? ?//內容格式為UTF8格式
? ?msg.BodyEncoding = Encoding.UTF8;
? ? SmtpClient client = new SmtpClient();
? ?//SMTP服務器地址
? ?client.Host = "smtp.qq.com";
? ?//SMTP端口,QQ郵箱填寫587
? ?client.Port = 587;
? ?//啟用SSL加密
? client.EnableSsl = true;
? ?client.Credentials = new NetworkCredential("1*****55@qq.com", "fnjnf***"); ? ?//第一個參數為發送驗證碼的QQ郵箱 ? ? 第二個參數為 ?發送驗證碼QQ郵箱的授權碼 ?
? ?//發送郵件
? ?client.Send(msg);
?}
}
具體QQ郵箱授權碼的生成步驟可以百度參考
?
轉載于:https://www.cnblogs.com/YangWenStudent/p/8259779.html
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
- 上一篇: 梦到别人养猪是什么意思
- 下一篇: C# Java间进行RSA加密解密交互(