这几天,一直在忙项目的事儿,没有抽出时间来写博客,今天好不容易得空来对博客进行更新。我们来谈谈前端存储在登录验证中的一些应用,现目前我知道的有大概两种方法(这里以对cookie处理为例):
第一种方法,在载入页面之前,先执行如下一段代码:
<script> if (getCookie('t_code') != '123456') { alert('对不起,权限不够,请登录!'); window.location.href = common.IP + '/Login.html'; // 如果不满足,跳转至登录页面 } //其中getCookie是一个实现封装好了的获取cookie的方法 //名为t_code的cookie值是后台数据库随机生成,并进行加密 </script>
第二种方法,同样是载入页面之前,先执行如下一段代码:
<script> var user = getCookie('user'), pwd = getCookie('pwd'); $.ajax({ url:IP+'/get', type:'get', data:({user:user,pwd:pwd}) success:function(data){ if(data.length==0){ alert('对不起,权限不够,请登录!'); window.location.href = IP+'/Login.html'; // 如果在后台查找不到相关数据,则调转至登录页面 } } });// 通过ajax与后台进行交互,在数据库中查找对应的账号和密码 </script>
通过比较,我们可以知道,第一种方法不用与后台交互,第二种需要与后台交互,从安全性方面考虑,虽然两种方法均可以通过相应的加密方式进行加密,但是,第二种方法是要在登录的时候将账号和密码放进cookie,这样一来,就增加了账号和密码被盗取的风险,而第一种只存了一组数字,而且这种数字是在后台随机生成的,这样就增加了安全性,而且安全性还很高,效率方面,第一种方法明显要优于第二种,因为第二种还要访问后台服务器进行交互。