cookie详解
一直不是太清楚cookie,今天在网上搜索时看到一篇不错的文章,记录下来,网址为
http://www.cnblogs.com/Darren_code/archive/2011/11/24/Cookie.html
1 <script type="text/javascript"> 2 /* 3 *name: cookie对应的名 4 *value: 对应的值 5 *expireDays cookie的生存时间,默认为浏览器关闭时,cookie失效 6 */ 7 8 function setCookie(name, value, expireDays) { 9 var _date = new Date(); 10 11 //按天数来设置cookie的生存时间,同时也可以使用小时或其他来设置 12 //exdate.setHours(exdate.getHours() + expiredays);按小时来设置cookie的生存周期 13 _date.setDate(_date.getDate() + expireDays); 14 15 //escape() 函数可对字符串进行编码,这样就可以在所有的计算机上读取该字符串 16 document.cookie = name + "=" + escape(value) + (expireDays == null ? "" : ";expires=" + _date.toGMTString()); 17 18 } 19 20 /* 21 *根据键值来获取cookie 22 */ 23 24 function getCookie(c_name) { 25 if (document.cookie.length > 0) { 26 start = document.cookie.indexOf(c_name + "="); // 27 if (start != -1) { 28 29 //寻找cookie开始的位置,次数+1指的为“=” 30 start = start + c_name.length + 1; 31 alert(start); 32 33 //从start位置开始搜寻; 34 end = document.cookie.indexOf(";", start); 35 36 if (end == -1) { 37 end = document.cookie.length; 38 } 39 alert(end); 40 return unescape(document.cookie.substring(start, end)); 41 } 42 43 } 44 alert("no cookie") 45 return ""; 46 } 47 if (getCookie('userName') != "") { 48 alert(getCookie("userName")); 49 } else { 50 setCookie('userName', 'test', 30); 51 alert(getCookie("userName")); 52 } 53 </script>
在google浏览器运行时,一直弹出的为"no cookie",很郁闷,经过查阅后才知道原来Google Chrome只支持在线网站的cookie的读写操作,对本地html的cookie操作是禁止的。所以下面的代码如果你写在一个本地的html文件中,将弹出的对话框内容为空。
在IE浏览器中可以正确的读取cookie的值,通过查看cookie可以查看该cookie的相关信息,其他相关信息的解释如PATH, DOMAIN可以查看我上面给出连接的博文中,说的十分清楚


浙公网安备 33010602011771号