使用匿名访问在Sharepoint中读取Cookie的问题

时间:2011-11-10 14:56:41

标签: c# asp.net cookies sharepoint-2010

我以这种方式将Cookie保存在sharepoint webpart中:

System.Web.HttpCookie cookie = new System.Web.HttpCookie(_cookieApplicationId);
cookie[_cookieName] = value;
cookie.Expires = DateTime.Now.AddMonths(1);
HttpContext.Current.Response.SetCookie(cookie);

该Cookie始终成功保存。我可以使用firebug在客户端上看到它。 当我尝试阅读那个cookie时:

System.Web.HttpCookie cookie = HttpContext.Current.Request.Cookies[_cookieApplicationId];
return cookie[_cookieName];

当我登录时它会工作,但如果我没有登录则不会。

无论我是否登录,保存始终有效。那么错误在哪里?

1 个答案:

答案 0 :(得分:3)

经过数天的试验和错误测试后,这些参与者中的一个(或多个)似乎是一个缓存问题:[Sharepoint,IIS,浏览器]

添加

HttpContext.Current.Response.Cache.SetNoServerCaching();
HttpContext.Current.Response.Cache.SetNoStore();

解决了这个问题。我只是不知道为什么匿名访问中的缓存不同