日期:2014-05-18  浏览次数:20465 次

ashx一般处理程序处理客户端COOKIE的问题,在本地可以,挂服务器用IIS测试就获取不到值
登陆成功之后,写入COOKIE。

在后台页面中使用ASHX文件获取详细内容,但获取内容前需要再次验证一下身份,于是使用ASHX文件中获取COOKIE来判断,ASHX是这样写的

public void ProcessRequest(HttpContext context)
  {
  context.Response.ContentType = "text/plain";
  string action = context.Request["a"];
  string IDCard="";
  if (context.Request.Cookies["UserName"] != null && context.Request.Cookies["UserName"].Value != "")
  IDCard = context.Request.Cookies["UserName"].Value.ToString();
  else
  {
  context.Response.Write("noInfo1");
  context.Response.End();
  }

}

可是挂IIS上一直就获取不到COOKIE的值,

难道提交时还要在向ASHX发送COOKIE信息到服务器验证?

------解决方案--------------------
探讨

5楼老师,请问这样写了后怎么读取?

还是这样读吗?IDCard = context.Request.Cookies["UserName"].Value.ToString();

------解决方案--------------------
多条你应该这样
HttpCookie aCookie = new HttpCookie("UserInfo");
aCookie.Values["UserName"] = "xxxx";
aCookie.Values["UserPassWord"] = "xxxx";
aCookie.Expires = DateTime.Now.AddDays(1);
Response.Cookies.Add(aCookie);