【问题标题】:Setting Cookies in a HTTPModule在 HTTPModule 中设置 Cookie
【发布时间】:2014-02-18 10:50:20
【问题描述】:

我在自定义 http 模块中设置 cookie 时遇到问题。我正在处理 BeginRequest 事件并按照以下方式设置 cookie:

HttpCookie myCookie = new HttpCookie(config.CookieName);

SitePrefCookie["key1"] = value1;

SitePrefCookie["key2"] = value2;

SitePrefCookie.Expires = DateTime.Now.AddDays(365);

SitePrefCookie.Domain = myDomain;

SitePrefCookie.Path = "/";

HttpContext.Current.Response.Cookies.Add(SitePrefCookie);

我知道 cookie 本身没有任何问题,因为如果我调用 Response.Flush() 或将状态设置为 302(因为它是用于重定向的 http 模块),它将起作用。但是我不能在一个请求中同时执行这两种操作,即刷新然后重定向,因为 ASP.Net 会抱怨标头已经发送到客户端。

我确信我可以解决这个奇怪的限制,但我只是不明白为什么在不需要重定向或刷新响应的情况下甚至没有在响应中发回 cookie。

【问题讨论】:

    标签: asp.net cookies


    【解决方案1】:

    这是一个已知问题。有关详细信息和解决方法,请参阅 http://support.microsoft.com/kb/2666571

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-06-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-09-06
      • 2016-03-29
      • 2016-11-01
      • 2016-01-12
      相关资源
      最近更新 更多