• java实现记住密码功能(利用cookie)


    <br>
    <input type="text" id="userName" name="userName" value="${username }" placeholder="用户名">
    <br>
    <input type="password" id="pwd" name="pwd" maxLength="50" value="${password }" placeholder="密码">
    <br>
    <label for="remember-me">
        <input name="aaaa" type="checkbox" onclick="remember();">
                      记住密码 
    </label>

    js代码:

    $(document).ready(function(){
            //记住密码功能
            var str = getCookie("loginInfo");
            str = str.substring(1,str.length-1);
            var username = str.split(",")[0];
            var password = str.split(",")[1];
            //自动填充用户名和密码
            $("#userName").val(username);
            $("#pwd").val(password);
    });
    
    //获取cookie
    function getCookie(cname) {
        var name = cname + "=";
        var ca = document.cookie.split(';');
        for(var i=0; i<ca.length; i++) {
            var c = ca[i];
            while (c.charAt(0)==' ') c = c.substring(1);
            if (c.indexOf(name) != -1) return c.substring(name.length, c.length);
        }
        return "";
    }
    
    //记住密码功能
    function remember(){
        var remFlag = $("input[type='checkbox']").is(':checked');
        if(remFlag==true){ //如果选中设置remFlag为1
            //cookie存用户名和密码,回显的是真实的用户名和密码,存在安全问题.
            var conFlag = confirm("记录密码功能不宜在公共场所(如网吧等)使用,以防密码泄露.您确定要使用此功能吗?");
            if(conFlag){ //确认标志
                $("#remFlag").val("1");
            }else{
                $("input[type='checkbox']").removeAttr('checked');
                $("#remFlag").val("");
            }
        }else{ //如果没选中设置remFlag为""
            $("#remFlag").val("");
        }
    }

    后台:

             //用户名
             String name = request.getParameter("userName");
             //密码
             String passWord = request.getParameter("pwd");
             
             //记住用户名、密码功能(注意:cookie存放密码会存在安全隐患)
             String remFlag = request.getParameter("remFlag");
             if("1".equals(remFlag)){ //"1"表示用户勾选记住密码
                 /*String cookieUserName = Utils.encrypt(name);
                 String cookiePwd = Utils.encrypt(passWord);
                 String loginInfo = cookieUserName+","+cookiePwd;*/
                 String loginInfo = name+","+passWord;
                 Cookie userCookie=new Cookie("loginInfo",loginInfo); 
    
                 userCookie.setMaxAge(30*24*60*60);   //存活期为一个月 30*24*60*60
                 userCookie.setPath("/");
                 response.addCookie(userCookie); 
             }
  • 相关阅读:
    absolute之后居中宽度自适应
    定位网页元素(5)
    浮动(4)
    Android的方法和属性(1)
    Activity步骤
    JSP的指令
    边框和边距(3)
    计算机快件键
    字体、文本、背景、列表样式和超链接(2)
    c/s和b/s的区别
  • 原文地址:https://www.cnblogs.com/super-chao/p/6118703.html
Copyright © 2020-2023  润新知