在写一些面向用户的网站类的程序时,必不可少的一个就是注册,通常情况下,我们会选择邮箱验证后注册,或者手机发送验证码注册。上篇文章中已经简单的描述了手机验证注册,这篇主要介绍一下邮箱验证。

邮箱验证的步骤主要是:用户填写邮箱账号并提交、后台判断输入是否是有效邮箱,如果为有效邮箱,发送验证链接到输入的邮箱中,用户通过邮箱的链接,成功注册。

想实现这个功能,首先,在填写注册信息时,后台生成一个默认的状态(例如:state=0,表示未验证)存入数据库。提交表单后,把输入的内容存入数据库,然后通过send命令,向指定邮箱发送验证链接,用户通过点击链接,是默认状态更改(例如:state=1,表示验证通过),注册既成功。

发送邮件的代码如下:

 protected bool sendTheMail(string smtpserver, string smptport, string userName, string pwd, string strfrom, string strto, string subj, string bodys)
{
SmtpClient _smtpClient = new SmtpClient();
_smtpClient.DeliveryMethod = SmtpDeliveryMethod.Network;//指定电子邮件发送方式
_smtpClient.Host = smtpserver;//指定SMTP服务器
if (YXShop.Common.WebUtility.isNumeric(smptport))
{
int port = Convert.ToInt32(smptport);
if (port > 0)
_smtpClient.Port = port;
}
_smtpClient.Credentials = new System.Net.NetworkCredential(userName,pwd);//用户名和密码 MailMessage _mailMessage = new MailMessage(strfrom, strto);
_mailMessage.Subject = subj;//主题
_mailMessage.Body = bodys;//内容
_mailMessage.BodyEncoding = System.Text.Encoding.Default;//正文编码
_mailMessage.IsBodyHtml = true;//设置为HTML格式
_mailMessage.Priority = MailPriority.High;//优先级 try
{
_smtpClient.Send(_mailMessage);
return true;
}
catch (Exception e)
{
throw e;
}
}
private bool SendTEmail(string strto, string subj, string bodys)
{
userReg_Accessor target = new userReg_Accessor(); // TODO: 初始化为适当的值
string smtpServer = "smtp.163.com"; // TODO: 初始化为适当的值
string smptport = "25"; // TODO: 初始化为适当的值
string userName = "**@163.com"; // TODO: 初始化为适当的值
string pwd = "**"; // TODO: 初始化为适当的值
string strFrom = "**.com"; // TODO: 初始化为适当的值
strto = "**.com"; // TODO: 初始化为适当的值
subj = "hello Miss lu"; // TODO: 初始化为适当的值
bodys = "----------"; // TODO: 初始化为适当的值
bool bl = sendTheMail(smtpServer, smptport, userName, pwd, strFrom, strto, subj, bodys);
return bl;
}

先说说这六个参数,smtpSever是邮件服务器,如果为smtp.163.com 表示网易邮箱服务器,如果是qq邮箱,则为smtp.qq.com,如果是其他的邮箱,可以查询网络。smptport是端口号,通常情况下网易邮箱和qq邮箱发送端端口号都是25,userName是发送端账号,通常为发送邮箱账号,与strFrom相同。pwd为发送端邮箱密码,strto为注册的邮箱,即输入的有效邮箱账号。subj是发送的邮件的主题,bodys是发送的邮件正文。

如果所有配置都正确,调用send方法,即可发送邮件。在邮件正文中做好设置,即可实现通过邮箱注册的功能。

简单总结如上,如有错误,欢迎指出,不胜感激!

版权声明:本文为博主原创文章,未经博主允许不得转载。

通过邮箱验证注册——.net代码的更多相关文章

  1. .net 实现注册邮箱验证激活

    没事上网当了个注册邮箱验证激活的代码,用起来感觉还不错,特意和大家要一起分享一下 下面是主要实现代码: uing System.Net.Mail; public partial class jquer ...

  2. java实现邮箱验证的功能

    在日常生活中,我们在一个网站中注册一个账户时,往往在提交个人信息后,网站还要我们通过手机或邮件来验证,邮件的话大概会是下面这个样子的: 用户通过点击链接从而完成注册,然后才能登录. 也许你会想,为什么 ...

  3. Android高效率编码-第三方SDK详解系列(二)——Bmob后端云开发,实现登录注册,更改资料,修改密码,邮箱验证,上传,下载,推送消息,缩略图加载等功能

    Android高效率编码-第三方SDK详解系列(二)--Bmob后端云开发,实现登录注册,更改资料,修改密码,邮箱验证,上传,下载,推送消息,缩略图加载等功能 我的本意是第二篇写Mob的shareSD ...

  4. Spring Boot邮箱链接注册验证

    Spring Boot邮箱链接注册验证 简单介绍 注册流程 [1]前端提交注册信息 [2]后端接受数据 [3]后端生成一个UUID做为token,将token作为redis的key值,用户数据作为re ...

  5. 正则表达式之邮箱验证javascript代码

    fuchangxi的正则: 复制代码 代码如下: /^([0-9A-Za-z\-_\.]+)@([0-9a-z]+\.[a-z]{2,3}(\.[a-z]{2})?)$/g 开始必须是一个或者多个单词 ...

  6. SSH邮箱验证与激活

    下面是我写的email验证和激活: 自己瞎写的,能用,不喜欢勿喷 action中regist方法中代码 /** * * 发送邮件的方法 */ StringBuffer sb=new StringBuf ...

  7. (进阶篇)PHP实现用户注册后邮箱验证,激活帐号

    我们在很多网站注册会员时,注册完成后,系统会自动向用户的邮箱发送一封邮件,这封邮件的内容就是一个URL链接,用户需要点击打开这个链接才能激活之前在该网站注册的帐号.激活成功后才能正常使用会员功能. 本 ...

  8. PHP用户注册邮箱验证激活帐号

    我们在很多网站注册会员时,注册完成后,系统会自动向用户的邮箱发送一封邮件,这封邮件的内容就是一个URL链接,用户需要点击打开这个链接才能激活之前在该网站注册的帐号.激活成功后才能正常使用会员功能. 本 ...

  9. javamail实现邮箱验证功能

    javamail是基于SMTP协议和POP3协议的邮件发送与接收系统,在用户注册与登陆的过程中,常需要用到邮箱验证功能,下面是基于javamail的一个简单实现 用户注册后通过servlet得到邮箱地 ...

随机推荐

  1. Gradle加载本地jar包

    有时,我们需要的jar包不一定能在远程仓库中找到,这时我们需要加载本地的jar包. 加载单独的jar包 在项目底下添加libs目录,将jar包仍进libs目录 build.gradle配置如下: de ...

  2. Java 扑克牌发牌

    今天看到这个算法题,http://www.cnblogs.com/xishuai/p/3392981.html ,忍不住自己用Java做了一个. 初始化很重要,所有的52张牌按顺序放入到容器里边,标志 ...

  3. node.js 开发命令行工具 发布npm包

    新建一个文件夹“nodecmd”: 在nodecmd下新建文件夹bin: 在bin文件夹下新建JavaScript文件hello.js #!/usr/bin/env node console.log( ...

  4. 2017-3-26 webpack入门(一)

    2017-3-26 webpack入门(一) webpack 前端 打包 最近项目里用到了webpack特意总结一下.来源:http://webpackdoc.com 1 概念 1.1 webpack ...

  5. Html5_sessionStrong和localStorage的灵活使用

    谈谈这两个属性sessionStrong和localStorage是Html5新增点属性,用来记录一些数据在浏览器. 两者的区别sessionStrong存储的数据是暂时的,浏览器关掉后,存储下来的数 ...

  6. 2017-2018-1 20179205《Linux内核原理与设计》第四周作业

    <Linux内核原理与分析> 视频学习及实验操作 Linux内核源代码 视频中提到了三个我们要重点专注的目录下的代码,一个是arch目录下的x86,支持不同cpu体系架构的源代码:第二个是 ...

  7. 用tkinter实现的gui小工具

    import tkinter import requests import json from tkinter import * class FindLocation(object): def __i ...

  8. python基础===如何优雅的写代码(转自网络)

    本文是Raymond Hettinger在2013年美国PyCon演讲的笔记(视频, 幻灯片). 示例代码和引用的语录都来自Raymond的演讲.这是我按我的理解整理出来的,希望你们理解起来跟我一样顺 ...

  9. linux中没有dos2UNIX或者UNIX2dos命令怎么解决办法

    linux中没有dos2UNIX或者UNIX2dos命令怎么解决办法 http://blog.csdn.net/w616589292/article/details/38274475 dos2unix ...

  10. ASPxCheckBoxList控件获取selected项的text和value的方法

    设ASPxCheckBoxList的ClientInstanceName为list_ var needtext; for (var i = 0; i < list_.GetSelectedIte ...