当前位置: 代码迷 >> ASP.NET >> 没法获取到Cookie
  详细解决方案

没法获取到Cookie

热度:1786   发布时间:2013-02-25 00:00:00.0
无法获取到Cookie
有两个项目的帐号的登录状态需要同步。所以使用Cookie来保持登录状态,对方是Java平台,由那一方写入cookie,ASP.NET来读,但是我这边却怎么也读取不到。
C# code
string value = string.Empty;if (HttpContext.Current.Request.Cookies["Mall_IsLogin"] != null){value = HttpContext.Current.Request.Cookies["Mall_IsLogin"].Value;if (!string.IsNullOrEmpty(value)){ //需要执行的代码}

以上就是获取cookie的代码。
后来我又使用单独的一个项目来调试。
C# code
    protected void Button1_Click(object sender, EventArgs e)    {        HttpCookie objCookie = new HttpCookie("Mall_IsLogin");        objCookie.Value = "高丽佳33";        DateTime dtExpiry = DateTime.Now.AddDays(10);        objCookie.Expires = dtExpiry;        objCookie.Domain = ".h2h.cn";        if (this.Response.Cookies["Mall_IsLogin"] == null)        {            Response.Cookies.Add(objCookie);        }        else        {            this.Response.Cookies.Remove("Mall_IsLogin");            this.Response.Cookies.Set(objCookie);        }    }    protected void Button2_Click(object sender, EventArgs e)    {        if (Request.Cookies["Mall_IsLogin"] != null)        {            string v = Request.Cookies["Mall_IsLogin"].Value;            Button2.Text = v;        }    }

用这个,也得不到Cookie。是写入的问题,还是读取的问题?求大虾帮忙!

------解决方案--------------------------------------------------------
C# code
 if (Request.Cookies["Mall_IsLogin"] != null)        {            string v = Request.Cookies["Mall_IsLogin"].Value;            Button2.Text = v;        }
------解决方案--------------------------------------------------------
你的测试代码存在两个问题
1.下面的代码永远不会执行,因为Response.Cookies["Mall_IsLogin"]!=null的
C# code
if (this.Response.Cookies["Mall_IsLogin"] == null)        {            Response.Cookies.Add(objCookie);        }
  相关解决方案