cookie存取数据分析

     刚开始接触web的时候,只是听老师讲过cookie,脑子里只知道有这个东西,貌似是跟缓存有关,还有个session,但两者的差别却没有具体去了解过,即使看过点资料,也似懂非懂的一概而过。原谅我对技术的态度,如果不用我就不会去碰,除非项目真的要涉及了才会去真正的去了解。我就是这么个人。

     理解cookie和session的实质并不是项目需要。是一次和后台人员谈技术的时候聊到了这个话题,我才真正知道原来cookie是存在客户端的,用于暂存数据,可以利用js调用出来使用的,而session是存在服务端的,至于取用好像跟我这前台又不搭边了,我的分工思想是不是又太明显了。

     cookie用到的地方很广,尤其登录。这次我开发的登录页面就涉及“下次自动登录”的功能,不用想就知道,userId和password存在cookie中,下次登录时再取出。接下来就是查资料,自己整合方法,实际运用进行测试。

 百度 :

   设置cookie,也就是往cookie里存数据,每条数据都是名字和值对应的,可以想象成超级全局变量的赋值,当然又有不同,可以用下面的代码给cookie赋值。

   document.cookie="userName=lzl";

   也可以一次给cookie里放入几个值,用分号和空格隔开"; "。比如:

   document.cookie="userName=lzl; userId=123";上面的赋值方式也可以用下面的方法实现:

   document.cookie="userName=lzl";

   document.cookie="userId=123";

   这点跟我们平时的js赋值是有区别的,给cookie赋值的时候,后一个赋值不会覆盖掉前一个赋值,而是添加到cookie里。当然,你可以重复设置一个名对应的值,后一次赋值会覆盖掉前一个。比如我重新设置一个userId,那么后面的设置会覆盖到前面的设置。

 

   我的解决方法:

 

  只需调用cookice.found(‘userId‘, $(‘.userId‘).val());存入cookie中。利用cookice.Read(‘userId‘);方法读取cookie中的userId值。password同理。

cookie存取数据分析
 1 function Cookice (){}
 2 /**
 3  * 设置cookie
 4  * @param nodeName
 5  * @param val
 6  */
 7 Cookice.prototype.found = function (nodeName, val){
 8       var exp = new Date();
 9       exp.setTime(exp.getTime()+30*24*3600*1000);
10      document.cookie = nodeName+‘=‘+val+‘;expires‘+‘=‘+exp.toGMTString();
11 };
12 
13 /**
14  * 读取cookie中数据
15  * @param nodeName
16  */
17 Cookice.prototype.Read = function(nodeName){
18      var CookiceStr = document.cookie;
19      if(CookiceStr.length > 0 && CookiceStr.indexOf(nodeName)>-1){
20          var CookiceArr = CookiceStr.split(‘;‘);
21          for(var i = 0; i < CookiceArr.length; i++){
22               var Cookicevalu = CookiceArr[i].split(‘=‘);
23               if($.trim(Cookicevalu[0])==nodeName){
24      return Cookicevalu[1];
25     }
26              }
27        }
28       return "";
29 };
30 var cookice = new Cookice();
cookie存取数据分析

 

     

cookie存取数据分析

上一篇:2011-02-23 00:18 java中进行2、8、16、10进制之间的转换


下一篇:Activity 通知