Selenium Webdriver 2.42.2, browsermob-proxy Beta 9, Windows 7/Firefox
我试图调用browsermob-proxy API来捕获http网络请求,并在遵循此示例之后。但是,我得到以下错误:
The proxy server is refusing connections
Firefox被配置为使用拒绝连接的代理服务器。
Check the proxy settings to make sure that they are correct.
Contact your network administrator to make sure the proxy server is working.
谁知道这可能是网络问题,我们不使用代理服务器在我们的网络。我还运行了browsermob-proxy.bat -port 9090来启动服务器。下面是我尝试过的代码示例:
public void setDriver(String browser,String environment,String platform) throws Exception {
ProxyServer server = null;
// start the proxy
server = new ProxyServer(9091);
server.start();
server.setCaptureHeaders(true);
server.setCaptureContent(true);
// set the Selenium proxy object
Proxy proxy = server.seleniumProxy();
//Proxy proxy = new Proxy();
//proxy.setHttpProxy("localhost:9091");
caps = DesiredCapabilities.firefox();
caps.setCapability(CapabilityType.PROXY,proxy);
server.newHar("test");
public void closeDriver() throws Exception {
Har har = server.getHar(); // browserMob proxy
FileOutputStream fos = new FileOutputStream("C:/Downloads/browserMob.har");
har.writeTo(fos); // browserMob proxy
server.cleanup(); // browserMob proxy
server.stop(); // browserMob proxy
this.driver.quit();
有两种变体:1) Browsermob代理服务器没有启动;2)代理服务器启动参数错误;
如果您有第二个问题,请尝试以下代码:
server = new ProxyServer(9091);
server.setLocalHost(InetAddress.getByName("localhost"));
server.start();
server.setCaptureContent(true);
server.setCaptureHeaders(true);
如上所述,但有几点想法:
-
尝试使用Firefox配置文件:
firefox的Webdriver和代理服务器 -
尝试添加地址参数:
InetAddress.getLocalHost()
-
确保端口是打开的