'*****************************************
'本文为原创,转载请留本文件头
'作者:街边仔(1983554)
'*****************************************
Cookies
咱今天讲的是烘焙常见的曲奇做法。
那家伙,香酥可口,咸甜适中,老少皆宜,好吃不腻。
准备面粉500g,鸡蛋4颗,奶油,巧克力按个人口味添加。
蛋黄分离,用蛋清和水和面。
。。。。。。。。。。。。。。。。。。。(省略5000+字)
好了,曲奇做好了。
咱一边啃着cookie,一边讨论一下开发中的Cookies。
咱们在做开发的时候,免不了会碰到Cookies。
ASP和JS设置跟读取Cookies都不难
JS可以加载JQ的cookies插件完成。
<script src="/j;></script>
设置
ASP:Re("username") = "街边仔"
JS:$.cookie('username','街边仔');
读取
ASP:username = Reque("username")
JS:var username = $.cookie('username');
下面开始划重点。
ASP的Cookies默认的失效期是到关闭浏览器为止。
如果你设置了一个很长的时间
Re("username").Expires = DateAdd("y",10,now())'这里设置了10年的有效期。
咱们假设,你记录的是用户登录状态,Cookies中记录的是用户名密码之类的内容。
如果不清除Cookies,用户再次打开浏览器的时候,登录的还是原来的用户。
那么我们应该怎么做呢?
我觉得应该有两种方法
一个是设置Cookies为空值
ASP:Re("username") = ""
JS:$.cookie('username', null);
另一个是使Cookies过期。
ASP:Re("name").Expires = DateAdd("s",-1,now())
JS:$.cookie('username', '', { expires: -1 });
咱们再假设,如果你的Cookies记录着很多内容
比如,username,userpass,userid,usersex...........
挨个设置Cookies之后,如果想让他们失效,也是挺麻烦的一件事,又要挨个设置一遍。
来,再次划重点。
ASP可以设置键值对形式的Cookies
ASP:
Re("users")("username") = "街边仔"
Re("users")("pass") = "111111"
Re("users")("sex") = "男"
。。。。。。。。。。。。。。
这样设置有个好处,可以对users统一设置,比方说失效期。
只要一句
Re("users").Expires = DateAdd("s",-1,now())
可以让所有users下的Cookies失效。
这时候,问题又来了,那么JS怎么读取这样的Cookies?
重点又来了。。。
JS只要读取出users的Cookies,其中的内容类似url中的get参数,是由&分割的。
类似这样的一个字符串:
username=街边仔&userpass=111111&sex=男.............
我们可以将这个字符串转换成json对象,然后读出每个键值。
读取的时候需要一个方法。
转json方法
通过这个方法,传出的就是json对象了。
有了json对象,你就想干嘛就干嘛了,哼哼。。。。