欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

c# .net在WEB页中的COOKIES设置技巧

程序员文章站 2024-03-06 21:52:38
一、设置cookies的方法很简单,有以下两种方法: 1、直接添加cookie值: response.cookies["username"] = "tom"; respon...
一、设置cookies的方法很简单,有以下两种方法:

1、直接添加cookie值:
response.cookies["username"] = "tom";
response.cookies["username"].expires = datetime.now.adddays(1) ; \\过期时间,在cookies文件中无法查看,也不能调用.

2、创建cookie对象的一个实例:
httpcookie cookie=new httpcookie("username");
cookie.value = "tom";
cookie.expires = datetime.now.adddays(1) ;
response.cookies.add(acookie)

用以上任一方法都可以生成一个有“username”项的文件, 在你的internet临时文件夹中你可以查看它。

也可以创建和添加有子键的cookies,如:
response.cookies["userinfo"]["username"] = "tom";

或:
httpcookie cookie=new httpcookie("userinfo");
cookie.values["username"] = "tom";
acookie.expires = datetime.now.adddays(1);
response.cookies.add(acookie)

二、检索cookies:
cookies某一键的值为:
server.htmlencode(request.cookies["userinfo"]["username"])
你可以用response.write()方法输出它到页面,如:
response.write(server.htmlencode(request.cookies["userinfo"]["username"]));

或赋值给其它变量:

string strcookie1=server.htmlencode(request.cookies["userinfo"]["username"]);

用cookies[i]数组可以检索所有项和子键,如:
复制代码 代码如下:

string[] cooname = new string[request.cookies.count];
string[] coovalue = new string[request.cookies.count];
httpcookie acookie;
for(int i=0;i<request.cookies.count;i++){
acookie = request.cookies[i];
cooname[i] = server.htmlencode(acookie.name);
if(!acookie.haskeys){
coovalue[i] = server.htmlencode(acookie.value);
}else{
string[] subcooname = new string[acookie.values.count];
string[] subcoovalue = new string[acookie.values.count];
for(int j=0;j<acookie.values.count;j++){
subcooname[j] = server.htmlencode(acookie.values.allkeys[j]);
subcoovalue[j] = server.htmlencode(acookie.values[j]);
}
}
}

三、修改cookies
如果是数值类型的cookie值,比如访问次数,你可以读取该值进行加减操作后再存回,一般的修改直接存入新值就可以了,系统自动用新值覆盖原值,存入的方法与创建相同。

四、删除cookies
删除cookies只要把有效期设为失效就可以了,如在创建时设有效期为一天:
cookie.expires = datetime.now.adddays(1) ;
要删除则设为:
cookie.expires = datetime.now.adddays(-1) ;

删除子键:
复制代码 代码如下:

httpcookie cookie;
cookie = request.cookies["userinfo"];
acookie.values.remove("username");
acookie.expires = datetime.now.adddays(1);
response.cookies.add(acookie);