Asp.net Cookie.Path不';不能使用Internet Explorer

Asp.net Cookie.Path不';不能使用Internet Explorer,asp.net,iis-7,internet-explorer-9,Asp.net,Iis 7,Internet Explorer 9,我正在登录时创建cookie。cookie作用域假定仅限于路径 HttpCookie cookie = new HttpCookie(cookieName); cookie.Expires = DateTime.Now.AddMinutes(expiryMinutes); cookie["username"] = username; SetCookieValue(cookie, "username", username); SetCookieValue(c

我正在登录时创建cookie。cookie作用域假定仅限于路径

    HttpCookie cookie = new HttpCookie(cookieName);
    cookie.Expires = DateTime.Now.AddMinutes(expiryMinutes);
    cookie["username"] = username;
    SetCookieValue(cookie, "username", username);
    SetCookieValue(cookie, "password", password);
    SetCookieValue(cookie, "domain", domain);
    cookie.HttpOnly = true;
    cookie.Secure = true;
    cookie.Path = Request.Url.GetLeftPart(UriPartial.Authority);
问题是,虽然这段代码在Firefox和Chrome中运行良好,但在InternetExplorer(和Opera)中却不起作用。问题行是最后一行-在这里设置cookie.Path参数时,即丢弃(我认为)cookie。我已经用Chrome控制台对此进行了调试,并且成功地用正确的路径(比如,/application)创建了cookie

这里可能有什么问题?

改变

cookie.Path = Request.Url.GetLeftPart(UriPartial.Authority);
对此

cookie.Path = "/";

我假设您希望将cookie应用于整个域。

由于基础WinINET InternetGetCookie实现中的一个模糊错误,IE的
文档。如果cookie设置为包含文件名的路径属性,Сookie
将不会返回cookie

例如,如果页面在自身上设置cookie,则如下所示:

Set-Cookie: HTTPSet-PathCookie=PASS;path=/check.htm
cookie将与HTTP请求一起发送,但不会出现在
文档.Сookie
集合中


请参阅。

不,我需要cookie特定于路径。它在设置为“/”时工作,无需担心。当将它设置为与/不同的值时,问题就开始了。你能发布你的HTTP响应头吗?嗯,很好。但是我没有设置文件名,只设置目录名,比如“/application1”。在这里,它仍然不起作用(IE9),在Chrome和Firefox上运行良好,在IE(IE10测试)或Opera中根本不起作用。。。