vs.net 2003 下:
程序从 login.aspx 页登录后,采用的是 cookies 登录方式,登录成功后进入
member.aspx ,里面分为3 个框架,其中两个框架上的链接,window.open 打开后,可以正常取到 cookies 的值,但是另一个框架面上的链接,window.open 方法找开链接后,却取不到 cookies 的值,是怎么回事呢?
登录后这样生成的 cookies :
System.Web.HttpCookie myHttpCookie = new System.Web.HttpCookie( "UserCookies ");
myHttpCookie.Values.Add( "UserID ",GetLogin[0].ToString());
System.Web.HttpContext.Current.Response.AppendCookie(myHttpCookie);
取的时候我是这样取得:
object oo = System.Web.HttpContext.Current.Request.Cookies[ "UserCookies "];
if(oo==null)
{
this.Response.Redirect( "../Login.aspx ");
}
else
{
//做正常处理
}
可是这样取 cookies ,为什么却经常取不到 cookies 呢,好像 cookies经常莫名的丢失似的
是不是 cookies 中框架中应用有问题啊???
------解决方案--------------------------------------------------------
System.Web.HttpCookie myHttpCookie = new System.Web.HttpCookie( "UserCookies "); myHttpCookie.Values.Add( "UserID ", GetLogin[0].ToString()); myHttpCookie.Expires = DateTime.Now.AddHours(1); System.Web.HttpContext.Current.Response.AppendCookie(myHttpCookie);
------解决方案--------------------------------------------------------
加上 域限制
myHttpCookie.Domain = "192.168.0.11 "; //或域名 "sina.com "这样