在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
原文地址:http://www.cnblogs.com/greatverve/archive/2011/07/05/asp-net-cookie-domain.html
将Cookie的有效范围限制到域。 默认情况下,Cookie 与特定的域相关联。 例如,如果您的站点是 www.contoso.com,那么当用户向该站点请求页面时, 您编写的Cookie就被发送到服务器。(有特定路径值的Cookie除外) 如果您的站点有子域(例如 contoso.com、sales.contoso.com 和 support.contoso.com), 就可以把Cookie同特定的子域相关联。为此,需要设置Cookie的 Domain 属性,如下所示:
Response.Cookies( "domain ").Value = DateTime.Now.ToString Response.Cookies( "domain ").Expires = DateTime.Now.AddDays(1) Response.Cookies( "domain ").Domain = "support.contoso.com " 您也可以利用Domain属性来创建可在多个子域中共享的Cookie。例如,对域进行如下设置:
Response.Cookies( "domain ").Value = DateTime.Now.ToString Response.Cookies( "domain ").Expires = DateTime.Now.AddDays(1) Response.Cookies( "domain ").Domain = "contoso.com " 以下是创建一个跨域的Cookie,只能实现同一个根域下的Cookie
如:www.it100.info,在这个根域下的所有二级域名可共享Cookie,{mail.it100.info,photo.it100.info}
public static bool CreateCookie(string strCookieName, string strCookieValue, string strDomain, bool blURLEncode) { if (blURLEncode) { strCookieValue = System.Web.HttpContext.Current.Server.UrlEncode(strCookieValue); } HttpCookie objCookie = new HttpCookie(strCookieName, strCookieValue); objCookie.Domain = strDomain; //设置Cookie的域名 System.Web.HttpContext.Current.Response.Cookies.Add(objCookie); return true; } Cookie有三个属性需要注意一下: cookie.Values.Add(key, value); cookie.Values.Add(key, value); |
请发表评论