쿠키 로 간단 한 사용자 로그 인 검증 실현

36417 단어 필기 하 다.
모두 두 페이지, 하나의 경로 입 니 다.
  • 로그 인 페이지 - html
  • <form>
         <label for="username">label>
         <input type="text" name="username" id="username"><br/>
         <label for="username">label>
         <input type="password" name="password" id="password"><br/>
         <label>label>
         <select id="remember">
             <option value="0">   option>
             <option value="1">  option>
         select><br/>
         <input id="submit" type="button" value="  ">
         <h1 id="h1">h1>
     form>
    

    - js 핵심 코드 cookie.set('logined',1);
    //        cookie,    ,           
    var cookie={
          getAll:function(){
              var obj={};
              var arr=document.cookie.split('; ');
              for(var i=0;i<arr.length;i++){
                  obj[arr[i].split('=')[0]]=arr[i].split('=')[1];
              }
              return obj;
          },
          get:function(key){
              return this.getAll()[key];
          },
          set:function(key,value,time){
              var date=new Date().getTime()+time*1000;
              document.cookie=key+'='+value+';expires='+new Date(date).toUTCString();
          },
          remove:function(key){
              var date=new Date().getTime()-1;
              document.cookie=key+'=;expires='+new Date(date).toUTCString();
          }
      };
      //             
      $(function(){
          var username=cookie.get('username');//  cookie
          var password=cookie.get('password');
          $('#username').val(username);// input       
          $('#password').val(password);
          if(cookie.get('logined')==1){//       'logined'cookie
              location.href='/home.html';//          
          }
      })
      $('#submit').click(function(){//         
          var username=$('#username').val();//  input         
          var password=$('#password').val();
          if($('#remember').val()==1){//       
              cookie.set('username',username);//  cookie
              cookie.set('password',password);
          }else{
              cookie.remove('username',username);//    cookie
              cookie.remove('password',password);
          }
          $.ajax({//post  
              url:'/login',
              type:'post',
              data:{
                  username:username,
                  password:password
              },
              success:function(data){
                  if(data.error==0){//          
                      cookie.set('logined',1);//  logined cookie          
                      location.href='/home.html';
                  }else{
                      $('#h1').html('        ')
                  }
              }
          })
      })
    

    - 로그 인 성공 인터페이스 - html
    <h1>    h1>
     <button id="zxBtn">  button>
    

    -js
    //       cookie
     var cookie={
            getAll:function(){
                var obj={};
                var arr=document.cookie.split('; ');
                for(var i=0;i<arr.length;i++){
                    obj[arr[i].split('=')[0]]=arr[i].split('=')[1];
                }
                return obj;
            },
            get:function(key){
                return this.getAll()[key];
            },
            set:function(key,value,time){
                var date=new Date().getTime()+time*1000;
                document.cookie=key+'='+value+';expires='+new Date(date).toUTCString();
            },
            remove:function(key){
                var date=new Date().getTime()-1;
                document.cookie=key+'=;expires='+new Date(date).toUTCString();
            }
        };
        if(cookie.get('logined')!=1){//  logined cookie    1
                location.href='cookie.html';//       
            }
        $('#zxBtn').click(function(){//      
            cookie.remove('logined');//  logined cookie
            location.href='/cookie.html';
        })
    

    경로 설정
    var express=require('express');
    var bodyParser=require('body-parser');
    var app=express();
    app.use(express.static('./public'));
    app.use(bodyParser.urlencoded({extended:false}));
    
    app.post('/login',function(req,res){
        var username=req.body.username;
        var password=req.body.password;
        if(username=='jack'&&password=='123'){
            res.send({
                error:0
            })
        }else{
            res.send({
                error:1
            })
        }
    })
    app.listen(8080);
    

    좋은 웹페이지 즐겨찾기