注册邮箱接收验证码小结

 
一般情况,我们在注册时会用到手机验证或者邮箱验证等,在这里再次将邮箱验证总结一下:
 
 
环境: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”;
        }
    }
© 版权声明
THE END
喜欢就支持一下吧
点赞0
分享
评论 抢沙发