Chrome:从网络内部获取 HTTP/2 日志

问题描述 投票:0回答:2

有没有办法以编程方式获取 HTTP/2 日志

chrome://net-internals/#http2

通过 selenium 还是命令行选项?

我想使用 HTTP/2 进行自动化测试,并且我正在使用 selenium-chromedriver。

我知道您可以从 chromedriver 访问 perflog,但是这些似乎隐藏了许多 HTTP/2 特定的内容,例如优先级或流 ID。

google-chrome selenium google-chrome-devtools selenium-chromedriver http2
2个回答
0
投票

您可以使用 Fiddler Core C# API

Fiddler.FiddlerApplication.AfterSessionComplete += FiddlerApplication_AfterSessionComplete;
Fiddler.FiddlerApplication.Startup(8888, FiddlerCoreStartupFlags.Default);
Fiddler.FiddlerApplication.AfterSessionComplete += delegate(Fiddler.Session oS)
        {
                Monitor.Enter(oAllSessions);
                oAllSessions.Add(oS);
                Monitor.Exit(oAllSessions);
        };
Fiddler.FiddlerApplication.Shutdown();

查看官方文档,你需要更多代码,但最终你会拥有所需的一切。


0
投票

可以使用

--log-net-log=output.json
启动 chrome。

但是,目前 chromedriver 中存在一个错误,会截断日志。 https://bugs.chromium.org/p/chromedriver/issues/detail?id=1688#c1

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.