通过下降代码尝试使用browsermob代理服务器:
final int port = 9000;
server = new ProxyServer(port);
server.start();
final DesiredCapabilities dc = new DesiredCapabilities();
dc.setCapability(CapabilityType.PROXY, server.seleniumProxy());
setName("test");
FirefoxBinary binary = new FirefoxBinary(new File("C:\Program Files (x86)\ff21\firefox.exe"));
File profileDir = new File("C:\Users\arno\Documents\profiles\firefox21.default");
FirefoxProfile profile = new FirefoxProfile(profileDir);
driver = new FirefoxDriver(binary, profile, dc);//;
server.newHar("monitis");
但它破坏了网站:请看截图。
我正在使用休耕代码来了解发生了什么(获取url和http状态)
Har har = server.getHar();
for(HarEntry entry : har.getLog().getEntries()){
System.out.println(entry.getRequest().getUrl() +": " + entry.getResponse().getStatus());
}
它给出了这样的结果:
mysite/files/js/numeral.min.js: 200
mysite/js/94842541.js: 200
mysite/files/css/page-home.min.css?v=6: -999
mysite/files/css/ui.min.css?v=18: -999
mysite/files/js/ui.min.js?also=jquery.selectric.min.js,jquery.checkradios.min.js,index.min.js&v=53: -999
尝试使用不推荐使用的BrowserMobProxyServer
类,而不是传统的ProxyServer
实现。请确保您使用的是最新版本的BMP和browsermob-core-littleproxy
模块。
事实证明,在Firefox设置中,在网络设置选项卡中,我需要设置选项"自动检测该网络的代理服务器"