首页 > 解决方案 > org.openqa.selenium.remote.internal.ApacheHttpClient 在 Selenium 3.14.0 中已弃用 - 应该改用什么?

问题描述

我目前正在使用 Selenium 3.14.0 库,其中org.openqa.selenium.remote.internal.ApacheHttpClient已被弃用,没有其他信息。应该改用哪个?

该类已在下一个版本 3.141.59 中删除。

我将它与 EdgeDriver 服务一起使用,如下所示:

final int connectionTimeout = 2 * 60 * 1000;
final int socketTimeout = 10 * 60 * 1000; // 10 minute timeout
final ApacheHttpClient.Factory clientFactory = new ApacheHttpClient.Factory(
    new HttpClientFactory(connectionTimeout, socketTimeout));

...

edgeDriverService = new EdgeDriverService.Builder()
                        .usingDriverExecutable(edgeDriver)
                        .usingAnyFreePort()
                        .build();
edgeDriverService.start();
HttpCommandExecutor executor = new HttpCommandExecutor(
    new HashMap<>(), edgeDriverService.getUrl(), clientFactory);
WebDriver driver = new RemoteWebDriver(executor, new EdgeOptions());

标签: javaseleniumselenium-webdriverwebdriverokhttp

解决方案


HTTP客户端切换到okhttp:http ://square.github.io/okhttp/

这在 3.11.0 版的 Selenium Java CHANGELOG 中有所提及,您也可以在源代码中看到它。


推荐阅读