Cookie包含多个值?

时间:2012-07-11 14:35:16

标签: asp.net cookies

我遇到了一个问题,即我使用Response.Cookies.Add(cookie)添加持久性cookie,但是如果用户已经拥有一个具有该名称的cookie,那么这似乎是在添加值。我认为最终会在cookie中出现多个值,这不是我想要的。我应该使用.Set吗?

请注意,Cookie可能包含上次访问时的值,我希望使用新值覆盖它,而不是保留多个值。

2 个答案:

答案 0 :(得分:0)

Cookie是一个关联数组,这意味着它们是键值对的集合,就像表单一样,如果给定键具有多个值,则其值将是一个数组。

密钥按域隔离,因此google.com可以拥有与您的名称相同的Cookie,并且不会导致任何冲突。怎么有人有你想要设置的相同的cookie名称?他们以前去过你的网站吗?

也许你应该尝试获取cookie然后按照你的建议设置更新。

答案 1 :(得分:0)

我发现原因是,如果你有一个cookie x和.mydomain.com并尝试在.subdomain.mydomain.com设置另一个cookie x,你最终得到两个值当您从.subdomain.mydomain.com阅读Cookie x时。 Add vs Set的选择与我的问题并不相关,只是我误解了Cookie和子域的互动方式。