刚刚尝试使用js 去获取 cs文件添加的cookies 如果直接用下面写法 也就是.net 最基本的的写法。
HttpCookie OnlineCookie = new HttpCookie("OnlineCookie", "1");
OnlineCookie.Expires = DateTime.Now.AddMinutes(3);
Response.Cookies.Add(OnlineCookie);
这样写法就没问题。。可以获取到。
如果封装了一个方法 方法如下。
/// <summary>
/// 添加Cookie
/// </summary>
/// <param name="cookie"></param>
public static void AddCookie(HttpCookie cookie)
{
HttpResponse response = HttpContext.Current.Response;
if (response != null)
{
//指定客户端脚本是否可以访问[默认为false]
cookie.HttpOnly = true;
//指定统一的Path,比便能通存通取
cookie.Path = "/";
//设置跨域,这样在其它二级域名下就都可以访问到了
//cookie.Domain = "chinesecoo.com";
response.AppendCookie(cookie);
}
}
然后 在通过下面的方法去添加cookies js 就无法获取到。
HttpCookie OnlineCookie = new HttpCookie("OnlineCookie", "1");
OnlineCookie.Expires = DateTime.Now.AddMinutes(3);
CookieHelper.AddCookie(OnlineCookie);
最上面不封装的时候 js 就可以获取到。下面的方法就无法获取到。
//指定客户端脚本是否可以访问[默认为false]
cookie.HttpOnly = true;