有没有人知道为什么当我运行一个经典的asp网站和asp.net MVC并排,当我在经典asp中创建cookie,然后.net集成管道,添加path =“/”到每个人的结尾,因此创造重复。被重写的Cookie路径
例如。如果我使用“/ test”路径创建两个cookie,那么当我运行这个经典的asp页面时,会使用path =“/”创建另外两个cookie。
原始页眉看起来像这样。
test1=aaa; path=/test
test2=bbb; path=/test
test1=aaa; path=/test; path=/
test2=bbb; path=/test; path=/
但是我只创建了test1和test2的cookie,路径设置为/ test。
如果关闭集成管道,我只会得到两个正确路径的cookie。 如果需要更多信息,请告诉我。
更新:看起来,当经典的ASP写入cookie时,它将所有内容放入包含路径的值中,所以当.NET读取cookie时,它会将整个值放入值中,然后将路径设置为“ /'作为默认值。这似乎只是在您写入相同请求时访问Cookie时出现问题。如果你不检查Response.Cookies或Request.Cookies,这似乎不会发生。我相信这是一个错误,但我不知道该怎么处理。
UPDATE2:我设置的饼干这样的在传统的ASP:
Response.AddHeader("Set-Cookie", "test1=aaa; path=/test; HttpOnly;");
您能否显示创建cookie的经典ASP代码 – 2013-04-25 13:26:20
您如何设置cookie?这可能与此问题有关:http://connect.microsoft.com/VisualStudio/feedback/details/774743/setcookie-does-not-overwrite-cookie-written-in-module-when-using-iis-集成管道 – 2013-04-26 08:37:58
已更新问题。 – Schotime 2013-04-26 08:59:01