首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >未保存ASPXAUTH cookie

未保存ASPXAUTH cookie
EN

Stack Overflow用户
提问于 2009-12-14 20:13:12
回答 3查看 5.7K关注 0票数 6

我正在做一个用ASPMVC2的.NET项目。

在这个项目中,我们将一些信息存储在一个ecripted cookie ( ASPXAUTH cookie)中,以避免需要为每个请求查询数据库。

问题是这部分的代码突然停止工作了。

我检查了对源代码管理服务器上的代码所做的更改,以查找可能导致该更改的原因,但我什么也没有发现。我甚至恢复到一个已知的工作副本(在其他人的PC上工作,相同的代码等),但经过调试,似乎不再保存.ASPXAUTH cookie。相反,正在设置ASP.NET_SessionId cookie ...(之前不是)

我更改了web.config文件以关闭sessionState。这消除了ASP.NET_SessionId cookie的设置,但它仍然没有保存身份验证cookie。

我最近安装了一些Microsoft Windows XP更新,但另一个人(他的PC运行应用程序很好)也安装了。

在谷歌搜索之后,我发现了一些信息,指出了cookie的过期日期的问题。原因是pc没有正确的时间/日期(情况并非如此),而其他原因是cookie过期日期设置错误。(我检查过了,并且设置正确)...

这个问题在其他浏览器上仍然存在,除了我使用的浏览器(Chrome),我用IE6试过了。

你知道为什么会发生这样的事情吗?

我会继续发布我能找到的任何有用的信息。

提前谢谢。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2009-12-14 20:23:13

这可能是你的饼干长得太大了。我遇到了同样的问题。如果你的cookie变得太大,它就不能工作了,当然这取决于浏览器

MSDN

cookies通常被限制为4096字节,并且每个站点不能存储超过20个cookies。通过使用带有子键的单个cookie,您可以使用分配给您的站点的20个cookie中的较少cookie。此外,单个cookie占用大约50个字符的开销(过期信息等),加上您在其中存储的值的长度,所有这些都计入4096字节的限制。如果您存储5个子键而不是5个单独的cookie,则可以节省单独cookie的开销,并且可以节省大约200个字节。

What is the maximum size of a web browser's cookie's key?

what happens when cookies file exceeds maximum size?

票数 9
EN

Stack Overflow用户

发布于 2016-05-18 21:24:46

检查cookie大小的一种简单方法是调试并运行以下代码

代码语言:javascript
复制
int cookieSize = System.Text.UTF8Encoding.UTF8.GetByteCount(faCookie.Values.ToString());

如果这超过了限制,那么您将遇到问题。

票数 1
EN

Stack Overflow用户

发布于 2019-11-25 03:43:59

在我的案例中,在一定数量的头部撞到墙上之后,我注意到我的工作项目中的cookie被设置为使用

代码语言:javascript
复制
FormsAuthentication.SetAuthCookie(user.token, false);

相比之下,在我的非工作项目中,cookie是手动设置的:

代码语言:javascript
复制
var coockie = FormsAuthentication.GetAuthCookie(user.token, false);
coockie.Expires = DateTime.Now.AddDays(7);

Response.Cookies.Add(coockie);

这发生在我的一个共享主机上,因为主机提供商做出了一些更改,而我无法通过支持部门找到这些更改。本地主机或其他共享主机或vps在第一种方法中运行良好

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1900584

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档