Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/selenium/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java HtmlUnitDriver:启用/禁用基本身份验证?_Java_Selenium_Basic Authentication_Htmlunit Driver - Fatal编程技术网

Java HtmlUnitDriver:启用/禁用基本身份验证?

Java HtmlUnitDriver:启用/禁用基本身份验证?,java,selenium,basic-authentication,htmlunit-driver,Java,Selenium,Basic Authentication,Htmlunit Driver,显示如何使用HtmlUnitDriver启用基本身份验证的答案。但是,如何再次禁用它 注意:此问题的公认答案是正确的,但目前不起作用。您可以使用以下变量: 这是正确的方法。然而,通过使用Wireshark,我可以看到它仍然向其他域发送凭据。似乎是个bug。顺便说一句,我也创建了这个:我更新了答案,当您指定主机名时,它不会发送凭据。我现在不在计算机旁,但如果您在示例中使用abcd/efg凭据为Google.com执行一个getPage,那么所有后续getPage调用也会发送凭据。我相信我用Html

显示如何使用
HtmlUnitDriver
启用基本身份验证的答案。但是,如何再次禁用它

注意:此问题的公认答案是正确的,但目前不起作用。

您可以使用以下变量:


这是正确的方法。然而,通过使用Wireshark,我可以看到它仍然向其他域发送凭据。似乎是个bug。顺便说一句,我也创建了这个:我更新了答案,当您指定主机名时,它不会发送凭据。我现在不在计算机旁,但如果您在示例中使用abcd/efg凭据为Google.com执行一个getPage,那么所有后续getPage调用也会发送凭据。我相信我用HtmlUnitDriver 2.18和2.19进行了测试。我想你们的问题是选择性地将凭证发送到某个特定的主机(在你们上一个问题编辑之前)。现在,我想您需要“禁用”凭据。对吗?DefaultCredentialsProvider只是要有.removeCredentials()
WebDriver driver = new HtmlUnitDriver() {
    protected WebClient modifyWebClient(WebClient client) {
        DefaultCredentialsProvider creds = new DefaultCredentialsProvider();

        creds.addCredentials(username, password, hostname, port, realm);

        client.setCredentialsProvider(creds);
        return client;
    }
};