概述
**
一般情况,我们在注册时会用到手机验证或者邮箱验证等,在这里再次将邮箱验证总结一下:
**
环境:jquery+ssm 请根据相对应的环境更改
这里是maven工程 所以急需要在pom.xml文件中添加依赖
需要的依赖包名: commons-email
前台.html中
<input type="text" name="telephone" id="j_Email" maxlength="20" placeholder="输入您的Email" />
<input type="text" class="verification inputlight " id="j_msgcode" name="megnum" placeholder="邮箱验证码" maxlength="6" />
<a class="botton" id="j_message">获取验证码</a>
<a class="botton" id="j_submit">核对Email验证码</a></li>
在我们点击 获取验证码 填写的 email 会收到6位数字
前提是 已经设置好了 email , email的具体设置在 文章下面会具体的告诉,往下看
<script>
$(function(){
//验证码获取
$("#j_message").click(function () {
var email = $("#j_Email").val();
sessionStorage.setItem("email",email);
$.post("/email",{"email":email},function (data) {
if(data=="ok"){
alter("验证码已经发送,请查看");
}else{
alter("验证码发送失败,请核对电子邮箱");
}
});
});
})
</script>
在controller 中
/**
* 生成验证码
* @param email
* @param request
* @return
*/
@ResponseBody
@RequestMapping("/email")
public String email(String email, HttpServletRequest request){
Random random=new Random();
String s="";
for (int i=0;i<6;i++){
int i1 = random.nextInt(10);
s+=i1;
}
System.out.println(s);
request.getSession().setAttribute("code",s);
HtmlEmail em=new HtmlEmail();//创建一个HtmlEmail实例对象
em.setHostName("smtp.163.com");//邮箱的SMTP服务器
em.setCharset("utf-8");//设置发送的字符类型
try {
em.addTo(email);
em.setFrom("********@163.com","邮箱表头");// 前面时邮箱 后面是 email 表头 比如***公司
em.setAuthentication("********@163.com","password");//设置发送人的邮箱和用户名和授权码(授权码是自己设置的)
em.setSubject("***公司-验证码");//设置发送主题
em.setMsg(s);
em.send();
} catch (EmailException e) {
e.printStackTrace();
}
return "ok";
}
当接收到电子邮箱后 输入 并且点击核对验证码
需要核对 是否宇发送的电子邮箱一致
*.html页面代码
$("#j_submit").click(function () {
var code = $("#j_msgcode").val();
$.post("/codeHandle",{"code":code},function (data) {
if (data=="1"){
location.href="需要跳转的页面";
} else {
alter(输入的验证码有误;请重新输入);
}
})
})
在controller中核对验证码
/**
* 核对验证码
* @param code 验证码
* @param request
* @return
*/
@ResponseBody
@RequestMapping("/codeHandle")
public String codeHandle(String code,HttpServletRequest request){
Object code1 = request.getSession().getAttribute("code");
if (code.equals(code1)){
return "1";
}else {
return "0";
}
}
可以说复制上面的代码就可以实现 ,只需要把自己的email 相对应的设置好 就好了,分享就到这了,有什么看不懂的就私聊把。
最后
以上就是奋斗保温杯为你收集整理的注册邮箱接收验证码小结的全部内容,希望文章能够帮你解决注册邮箱接收验证码小结所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复