0

我正在尝试使用 asp.net 中的以下代码将会话变量从一个页面传递到另一个页面:

HttpContext.Current.Session["FacebookID"] = id;

这适用于 Firefox 和 Chrome,但当我尝试从 Internet Explorer 9 中的另一个页面获取该值时,它不起作用,我什至在兼容模式下尝试过。它只是返回空值。

有人对为什么我的会话变量不存储有任何建议吗?

4

2 回答 2

3

你在 IE 中关闭了 Cookies 吗?如果是这样,除非您将会话状态更改为无cookie,否则它将无法跟踪您的会话...

于 2012-07-22T18:58:12.737 回答
1

我看到您已经得到了答案,但对于其他有同样问题的人来说:
这可能是隐私偏好 (P3P) 问题。在这种情况下,您必须添加 P3P 标头,例如...

HttpContext.Current.Response.AddHeader("p3p", "CP=\"IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT\""); 

阅读 Peter Bromberg 的博客以了解更多信息:http: //petesbloggerama.blogspot.se/2007/08/aspnet-loss-of-session-cookies-with.html

于 2013-02-07T14:50:25.093 回答