3

我在 selenium 4 中使用 devTools 从网络选项卡中检索响应。

当我获取 url、响应代码、标题等时,

我找不到检索实际响应正文的方法。(我的目的是验证响应中的键值对。)

任何帮助深表感谢。

下面是我的代码片段。

   devTools.addListener(Network.responseReceived(),
            response -> {
                Response res= response.getResponse();
                System.out.println("URL - " + res.getUrl());
                System.out.println("Status - " + res.getStatus());
                System.out.println("Headers - " + res.getHeaders());
                System.out.println("Header text - " + res.getHeadersText());
            });
4

1 回答 1

1
            devTools = ((ChromeDriver) driver).getDevTools();
            devTools.createSession();
            devTools.send(Network.clearBrowserCache());
            devTools.send(Network.setCacheDisabled(true));

            final RequestId[] requestIds = new RequestId[1];
            devTools.send(Network.enable(Optional.empty(), Optional.empty(), Optional.of(100000000)));
            devTools.addListener(Network.responseReceived(), responseReceived -> {
                

                requestIds[0] = responseReceived.getRequestId();
                String url = responseReceived.getResponse().getUrl();

                int status = responseReceived.getResponse().getStatus();
                String type = responseReceived.getType().toJson();
                String headers = responseReceived.getResponse().getHeaders().toString();

                String  responseBody = devTools.send(Network.getResponseBody(requestIds[0])).getBody();
于 2021-10-15T14:50:26.777 回答