cookies的创建:
在客户端创建一个username的cookies,其值为oneday,有效期为1天.
方法1:
复制代码 代码如下: Response.Cookies["username"].Value="admin"; Response.Cookies["username"].Expires=DateTime.Now.AddDays(1);
方法2:
复制代码 代码如下: System.Web.HttpCookie newcookie=new HttpCookie("username"); newcookie.Value="oneday"; newcookie.Expires=DateTime.Now.AddDays(1); Response.AppendCookie(newcookie);
创建带有子键的cookies:
复制代码 代码如下: System.Web.HttpCookie newcookie=new HttpCookie("user"); newcookie.Values["username"]="admin"; newcookie.Values["password"]="admin"; newcookie.Expires=DateTime.Now.AddDays(1); Response.AppendCookie(newcookie);
cookies的读取:
无子键读取:
复制代码 代码如下: if(Request.Cookies["username"]!=null) { Response.Write(Server.HtmlEncode(Request.Cookies["username"].Value)); }
有子键读取:
复制代码 代码如下: if(Request.Cookies["user"]!=null) { Response.Write(Server.HtmlEncode(Request.Cookies["user"]["username"].Value)); Response.Write(Server.HtmlEncode(Request.Cookies["user"]["password"].Value));
using System; using System.Data; using System.Configuration; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls;
public class Cookie { /// <summary> /// Cookies赋值 /// </summary> /// <param name="strName">主键</param> /// <param name="strValue">键值</param> /// <param name="strDay">有效天数</param> /// <returns></returns> public bool setCookie(string strName,string strValue,int strDay) { try { HttpCookie Cookie = new HttpCookie(strName); //Cookie.Domain = ".xxx.com";//当要跨域名访问的时候,给cookie指定域名即可,格式为.xxx.com Cookie.Expires = DateTime.Now.AddDays(strDay); Cookie.Value = strValue; System.Web.HttpContext.Current.Response.Cookies.Add(Cookie); return true; } catch { return false; } }
/// <summary> /// 读取Cookies /// </summary> /// <param name="strName">主键</param> /// <returns></returns> public string getCookie(string strName) { HttpCookie Cookie = System.Web.HttpContext.Current.Request.Cookies[strName]; if (Cookie != null) { return Cookie.Value.ToString(); } else { return null; } }
/// <summary> /// 删除Cookies /// </summary> /// <param name="strName">主键</param> /// <returns></returns> public bool delCookie(string strName) { try { HttpCookie Cookie = new HttpCookie(strName); //Cookie.Domain = ".xxx.com";//当要跨域名访问的时候,格式为.xxx.com Cookie.Expires = DateTime.Now.AddDays(-1); System.Web.HttpContext.Current.Response.Cookies.Add(Cookie); return true; } catch { return false; } } }
示例:
复制代码 代码如下: Cookie Cookie = new Cookie(); Cookie.setCookie("name","aaa",1);//赋值 Cookie.getCookie("name");//取值 Cookie.delCookie("name");//删除
注意:当Cookie存中文出现乱码,则在存放时给中文编码,如Cookie.setCookie("name",Server.UrlEncode("aaa"),1),读取时解码即可
另外:只要不给cookie设置过期时间,cookie在浏览器关闭的时候自动失效
复制代码 代码如下: using System; using System.Data; using System.Configuration; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls;
public class Cookie { /// <summary> /// Cookies赋值 /// </summary> /// <param name="strName">主键</param> /// <param name="strValue">键值</param> /// <param name="strDay">有效天数</param> /// <returns></returns> public bool setCookie(string strName,格式为.xxx.com Cookie.Expires = DateTime.Now.AddDays(-1); System.Web.HttpContext.Current.Response.Cookies.Add(Cookie); return true; } catch { return false; } } }
示例:
复制代码 代码如下: Cookie Cookie = new Cookie(); Cookie.setCookie("name",cookie在浏览器关闭的时候自动失效 (编辑:李大同)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|