设置代理和发送头selenium和java时出现问题
我在自动化测试中使用了selenium和java。我被迫在测试中发送授权令牌,所以我使用了BrowserMobProxy库。这是我在@BeforeClass中的设置:
BrowserMobProxy proxy = new BrowserMobProxyServer();
proxy.setTrustAllServers(true);
proxy.addHeader("Authorization",tokenIDdev2);
proxy.start();
接下来,我需要做的是通过特殊的代理地址打开浏览器,我发现这种设置代理地址的方式:
Proxy seleniumProxy = ClientUtil.createSeleniumProxy(proxy);
DesiredCapabilities capabilities = new DesiredCapabilities();
seleniumProxy.setHttpProxy(PROXY_ADDRESS);
seleniumProxy.setSslProxy(PROXY_ADDRESS);
capabilities.setCapability(CapabilityType.PROXY, seleniumProxy);
// Setting up Proxy for chrome
ChromeOptions opts = new ChromeOptions();
opts.merge(capabilities);
driver = new ChromeDriver(opts);
问题是,当我通过在上述方法中设置的代理进行连接时,请求并没有使用我在第一部分中指定的头发送
你是否认为我做错了,或者有其他方法来处理这种情况
谢谢
# 1 楼答案
出于某种原因,我想我也没能让
.addHeader();
方法起作用但我用另一种方式做到了:
如果您100%确定“授权”头永远不存在,则可以删除
if
部分