Chrome Devtools 协议和帖子

问题描述

使用 Chrome Devtools 协议 (CDP) 可以让 Chrome“导航”到一个 URL。这样做会产生一个 GET。

有什么方法可以使用 POST 进行“导航”并提供正文? NavigateCommand 似乎只定义了 Url、CommandName、FrameId、Referrer 和 TransitionType。

我正在使用 CDP 的 BaristaLabs 实现的变体。执行 GET 的代码如下所示:

public async Task<byte[]> PdfFromUrl(
  string url = "about:",bool landscape = false,bool displayheaderfooter = true,bool printBackground = false,byte[] postBody= null)
{

  var newSessionInfo = await CreateNewSession();

  try
  {
    using (var session = new ChromeSession(newSessionInfo.WebSocketDebuggerUrl))
    {
      using (var navigatorWatcher = new NavigatorWatcher(session))
      {
        await navigatorWatcher.Start();
        var navCmd = new NavigateCommand { Url = url };
        var navigateResult = await session.Page.Navigate(navCmd,millisecondsTimeout: 120 * 1000);
        await navigatorWatcher.WaitForNetworkIdle();
      }

postBody 参数是我的,它还没有做任何事情。

显然,帖子通常来自远程客户端。但我看不出有什么内在原因无法模拟,除了没有命令可以模拟。

我怀疑这个问题实际上是关于 CDP 以及我可能需要添加到 Barista Labs CDP 实施中的内容

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)