Browsermob 代理 - HAR 文件不如手动 HAR 完整?
Browsermob Proxy - HAR file not as complete as manual HAR?
所以,下面是我试用 Browsermob 代理的基本代码,以及生成的输出。
问题出在输出上,它似乎 (1) 数量不完整且 (2) 不像我在开发工具(Firefox 或 Chrome)中手动检查网络统计信息那样详细。
能否在HAR文件中包含更详细的信息? 我想知道,例如,是否加载了特定的 Javascript(或者是否有更好的解决方案?)。
// Supply the path to the Browsermob Proxy batch file
Server server = new Server(@"C:\Users\Frederik\Desktop\SeleniumTestje\browsermob-proxy-2.1.0-beta-6\bin\browsermob-proxy.bat");
server.Start();
Client client = server.CreateProxy();
client.NewHar("google");
var seleniumProxy = new Proxy { HttpProxy = client.SeleniumProxy };
var profile = new FirefoxProfile();
profile.SetProxyPreferences(seleniumProxy);
// Navigate to the page to retrieve performance stats for
IWebDriver driver = new FirefoxDriver(profile);
driver.Navigate().GoToUrl("http://www.google.co.uk");
// Get the performance stats
HarResult harData = client.GetHar();
foreach(Entry e in harData.Log.Entries)
{
Console.WriteLine(e.Request.Url, e.Request.Headers);
}
控制台输出:
http://ocsp.digicert.com/
http://ocsp.digicert.com/
http://ocsp.digicert.com/
http://www.google.co.uk/
http://clients1.google.com/ocsp
http://clients1.google.com/ocsp
http://clients1.google.com/ocsp
http://clients1.google.com/ocsp
我在使用 Fiddlercore 时遇到了同样的问题,但我找到了解决方案:
我也运行关注这个问题。它最终成为 Chrome 的网络工具默认启用自己的缓存,因此 BrowserMobProxy 不知道所有请求。
要修复自动 .har 使其与手动 .har 相同,select 网络工具中的“禁用缓存”复选框。更多信息在这里:Disabling Chrome cache for website development
所以,下面是我试用 Browsermob 代理的基本代码,以及生成的输出。 问题出在输出上,它似乎 (1) 数量不完整且 (2) 不像我在开发工具(Firefox 或 Chrome)中手动检查网络统计信息那样详细。
能否在HAR文件中包含更详细的信息? 我想知道,例如,是否加载了特定的 Javascript(或者是否有更好的解决方案?)。
// Supply the path to the Browsermob Proxy batch file
Server server = new Server(@"C:\Users\Frederik\Desktop\SeleniumTestje\browsermob-proxy-2.1.0-beta-6\bin\browsermob-proxy.bat");
server.Start();
Client client = server.CreateProxy();
client.NewHar("google");
var seleniumProxy = new Proxy { HttpProxy = client.SeleniumProxy };
var profile = new FirefoxProfile();
profile.SetProxyPreferences(seleniumProxy);
// Navigate to the page to retrieve performance stats for
IWebDriver driver = new FirefoxDriver(profile);
driver.Navigate().GoToUrl("http://www.google.co.uk");
// Get the performance stats
HarResult harData = client.GetHar();
foreach(Entry e in harData.Log.Entries)
{
Console.WriteLine(e.Request.Url, e.Request.Headers);
}
控制台输出:
http://ocsp.digicert.com/
http://ocsp.digicert.com/
http://ocsp.digicert.com/
http://www.google.co.uk/
http://clients1.google.com/ocsp
http://clients1.google.com/ocsp
http://clients1.google.com/ocsp
http://clients1.google.com/ocsp
我在使用 Fiddlercore 时遇到了同样的问题,但我找到了解决方案:
我也运行关注这个问题。它最终成为 Chrome 的网络工具默认启用自己的缓存,因此 BrowserMobProxy 不知道所有请求。
要修复自动 .har 使其与手动 .har 相同,select 网络工具中的“禁用缓存”复选框。更多信息在这里:Disabling Chrome cache for website development