close

// 写cookie
HttpCookie cookie = new HttpCookie("Info");//定义cookie对象以及名为Info的项
DateTime dt = DateTime.Now;//定义时间对象
TimeSpan ts=new TimeSpan(1,0,0,0);//cookie有效作用时间,具体查msdn
cookie.EXPires = dt.Add(ts);//添加作用时间
cookie.Values.Add("user","cxbkkk");//增加属性
cookie.Values.Add("userid","1203");
Response.AppendCookie(cookie);//确定写入cookie中

//读取cookie
if(Request.Cookies["Info"]!=null)
{
     string temp=Convert.ToString(Request.Cookies["Info"].Values["user"])+" "+Convert.ToString(Request.Cookies["Info"].Values["userid"]);
    //读全部就用Request.Cookies["Info"].Value)
     if(temp=="")
     {
         Response.Write("空");
     }
     else
        Response.Write(temp);
}
else
{
    Response.Write("error");
}

//修改cookie
Response.Cookies["Info"]["user"] = "2";
Response.Cookies["Info"].Expires = DateTime.Now.AddDays(1);      

// 删除cookie下的属性
HttpCookie acookie=Request.Cookies["Info"];
acookie.Values.Remove("userid");
acookie.Expires = DateTime.Now.AddDays(1);
Response.Cookies.Add(acookie);        删除所有cookie,就是设置过期时间为现在就行了
int limit=Request.Cookies.Count - 1;
for(int i=0;i<limit;i++)
{
   acookie = Request.Cookies(i)
   acookie.Expires = DateTime.Now.AddDays(-1)
   Response.Cookies.Add(acookie)
}


// 读取所有 cookies
HttpCookieCollection cookies;
HttpCookie oneCookie;
cookies = Request.Cookies;

string[] cookieArray = cookies.AllKeys;
for (int i=0; i < cookieArray.Length; i++)
{
oneCookie = cookies[cookieArray[i]];
Response.Write(oneCookie.Name + " - " + oneCookie.Value);
}

// 添加单个cookies
if (Request.Browser.Cookies == true)
{
if (Request.Cookies["LastVisited1"] == null)
{
   HttpCookie newCookie = new HttpCookie("LastVisited1",DateTime.Now.ToString());
   newCookie.Expires = DateTime.Now.AddYears(1);
   Response.Cookies.Add(newCookie);
}
else
{
   Response.Write(Request.Cookies["LastVisited1"].Value);
}
}

 

======================================================

附录:ASP.NET 2.0 中Cookies的Expires属性详解

response.cookies("cookiename").expires中expires的属性如下:

response.cookies("cookiename").expires=-1 表示网页显示之后过期

response.cookies("cookiename").expires=0 立即过期

response.cookies("cookiename").expires=data +10 当前时间+10天数 表示在10天以后过期了.

response.cookies("cookiename").expires=10 表示10分钟后过期..

单独表示是以分钟来做单位的,session的单位也是的,但是和date + 10 就不一样了 ,因为date是日期,日期的单位是天,10当然就变成天了。

以上就是设置过期时间的,但是单位是“天”,就是说这个cookie过一天才会无效,如果想让它在半小时或更短的时间就无效要怎么做呢?

response.cookie("cookiename").expires=dateadd("n",30,now())
"n"单位为“分钟”
或者
response.cookie("cookiename").expires=dateadd("s",1800,now())
"s"单位为“秒
arrow
arrow
    全站熱搜
    創作者介紹
    創作者 11 的頭像
    11

    冠霖的部落格

    11 發表在 痞客邦 留言(0) 人氣()