如何在IE webdriver C#中删除cookie

时间:2012-12-11 15:20:24

标签: c# internet-explorer cookies selenium webdriver

我正在尝试删除IE32和IE64位webdriver中的cookie,我尝试使用以下命令

WebDriver.Cookies.DeleteCookieNamed("cookie name");
WebDriver.Manage().Cookies.DeleteAllCookies();

两个选项都没有删除cookie,请帮忙

2 个答案:

答案 0 :(得分:0)

以下代码可能有助于删除所有Cookie:

 string[] cookies = Request.Cookies.AllKeys;
        foreach (string cookie in cookies)
        {
            BulletedList1.Items.Add("Deleting " + cookie);
            Response.Cookies[cookie].Expires = DateTime.Now.AddDays(-1);
        }

或者按照以下方式进行操作,如果想要在注销后删除ore clear cookie:

HttpCookieCollection cookieCols= New HttpCookieCollection();
cookieCols = Request.Cookies;
Request.Cookies.Remove("PASS");
Request.Cookies.Remove("UID") ;

您也可以在注销事件中编写如下语句以清除cookie:

FormsAuthentication.SignOut();

答案 1 :(得分:0)

幸运的是,Selenium 2.34和IEDriverServer刚刚问世。现在,您可以轻松地在IE中启动干净的浏览器(删除cookie)而无需黑客攻击。请参阅博文here中的评论。但现在你只需要代码。

var options = new InternetExplorerOptions{EnsureCleanSession = true};
var ieDriver = new InternetExplorerDriver(options);