关于.net如何实现发送邮箱并获取验证码,具体操作如下:
首先是一个简单的前端界面:(本次测试只需用到一个文本框,两个按钮即可)
(一)写代码前一定要先去QQ邮箱进行一个小操作
1.首先进入QQ邮箱后找到设置
2.找到账户
3.开启这个服务
OK,邮箱设置完成后接下来就可以写代码了,很简单。
写代码之前先了解一下这些属性
SmtpServer: 发送电邮所使用的 SMTP 服务器的名称。
SmtpPort: 发送 SMTP transactions (电邮) 所用的服务器端口。
EnableSsl: True,如果服务器应该使用 SSL (Secure Socket Layer) 加密。
UserName: 发送电邮所用的 SMTP email 账户的名称。
Password: SMTP 电邮账户的密码。
From: 出现在 from 栏中的电邮地址(通常与 UserName 相同)
先搭建一个简单的前端界面 - <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Emai01.aspx.cs" Inherits="CCTV.Emai01" %>
- <!DOCTYPE html>
- <html xmlns="http://www.w3.org/1999/xhtml">
- <head runat="server">
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
- <title></title>
- </head>
- <body>
- <form id="form1" runat="server">
- <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
- <asp:Button ID="CodeBtn" runat="server" Text="发送验证码" OnClick="CodeBtn_Click" />
- <asp:Button ID="Button2" runat="server" Text="确定" OnClick="Button2_Click" Width="50px" />
- </form>
- </body>
- </html>
复制代码
布局好了前端后再进入到后端
首先先引入这两个命名空间---
具体后端代码如下: - using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Web;
- using System.Web.UI;
- using System.Web.UI.WebControls;
- using System.Net.Mail;
- using System.Net;
- namespace CCTV
- {
- public partial class Emai01 : System.Web.UI.Page
- {
- //首先先定义一个全局变量
- public static string str;//公开随机数Str
- protected void Page_Load(object sender, EventArgs e)
- {
- if (!IsPostBack)
- {
- }
- }
- protected void CodeBtn_Click(object sender, EventArgs e)
- {
- //随机验证码
- Random rm = new Random();
- int i;
- str = string.Empty;
- for (int p = 0; p < 6; p++)
- {
- i = Convert.ToInt32(rm.NextDouble() * 10);
- str += i;
- }
- string tex1 = TextBox1.Text;
- string content = "TideShoe提醒您:您正在使用邮箱安全验证服务,您本次操作修改密码的验证码是:" + str;
- SendEmail1($"{tex1}", "TideShoe后台登录修改用户信息提示", content);//收件人邮箱,邮箱标题,邮箱内容
- }
- #region
- public static void SendEmail1(string mailTo, string mailSubject, string mailContent)
- {
- //("邮箱服务器类型", 端口号);
- SmtpClient mailClient = new SmtpClient("smtp.qq.com");
- mailClient.EnableSsl = true;
- mailClient.UseDefaultCredentials = false;
- //Credentials登陆SMTP服务器的身份验证.
- mailClient.Credentials = new NetworkCredential("1513095130@qq.com", "**********");//邮箱,
- MailMessage message = new MailMessage(new MailAddress("1513095130@qq.com"), new MailAddress(mailTo));//发件人,收件人
- message.IsBodyHtml = true;
- message.Body = mailContent;//邮件内容
- message.Subject = mailSubject;
- mailClient.Send(message); // 发送邮件
- }
- #endregion
- protected void Button2_Click(object sender, EventArgs e)
- {
- if(TextBox1.Text == str)
- {
- Button1.Text = "成功";
- }
- else
- {
- Button1.Text = "失败";
- }
- }
- }
- }
复制代码
注:******为你自己的授权码。填写自己的即可
如果还有不懂的或者有问题的可以私信问我。
来源:https://blog.csdn.net/weixin_54629917/article/details/123693748 免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作! |