【发布时间】:2011-06-24 01:13:58
【问题描述】:
我有一个使用 ASP.NET 的 cookie 的网站,但是每次我发布一个新站点并上传全部或部分新的 .dll 时,它都会使所有现有的 cookie 失效。
cookie 用于跟踪简单的登录,但我想维护在发布之前创建的 cookie,以便它们在之后仍然可用 - 这似乎会影响基于 webkit 的浏览器,在我的测试中,我可以在每个部分或全部之后复制这个问题发布。
以下是我用来设置 Cookie 的代码:
If HttpContext.Current.Response.Cookies(COOKIE_NAME) Is Nothing Then
Dim _cookie As New HttpCookie(COOKIE_NAME, CookieValue)
_cookie.Path = COOKIE_PATH
_cookie.Expires = COOKIE_EXPIRES
HttpContext.Current.Response.Cookies.Add(_cookie)
Else
With HttpContext.Current.Response.Cookies(COOKIE_NAME)
.Path = COOKIE_PATH
.Value = Value
.Expires = COOKIE_EXPIRES
End With
End If
这是我用来读取 Cookie 的代码:
If HttpContext.Current.Request.Cookies(COOKIE_NAME) IsNot Nothing Then
Return HttpContext.Current.Request.Cookies(COOKIE_NAME).Value
End If
其中 COOKIE_NAME 设置为“MyCookie”,COOKIE_PATH 设置为“/”,COOKIE_EXPIRES 设置为“#1/1/2035#”
我可以很好地读/写 cookie,但是一旦我发布了所有以前创建的 cookie,Webkit 浏览器将无法读取它们,尽管它们可以再次写入,但我不确定这是否会一直如此 -我希望发布对 cookie 完全没有影响 - 这可能吗?
【问题讨论】:
-
您是否查看了 WebKit 浏览器中的请求/响应标头以了解发生了什么?
标签: asp.net vb.net session cookies windows-server-2008