Как скопировать данные запроса, ответа и формы из браузера Chrome с помощью расширений Chrome? - PullRequest
0 голосов
/ 04 апреля 2019

Я создаю расширение для получения сведений на вкладке "Сеть" инструментов разработчика Chrome. Нужны данные формы и текст ответа для каждого запроса

var currentTabId = parseInt(window.location.search.substring(1));

window.addEventListener("load", function () {
    chrome.debugger.sendCommand({
        currentTabId: currentTabId
    }, "Network.enable");
    chrome.debugger.onEvent.addListener(onEvent);
});

window.addEventListener("unload", function () {
    chrome.debugger.detach({
        currentTabId: currentTabId
    });
});

var requests = {};

function onEvent(debugID, message, params) {
    if (currentTabId != debugID.currentTabId)
        return;

    if (message == "Network.requestWillBeSent") {
        var requestDiv = requests[params.requestId];
        if (!requestDiv) {
            var requestDiv = document.createElement("div");
            requestDiv.className = "request";
            requests[params.requestId] = requestDiv;
            var dynamicHtmlBody = document.createElement("div");
            dynamicHtmlBody.textContent = params.request.url;
            requestDiv.appendChild(dynamicHtmlBody);
            dynamicHtmlBody = "";
            // This code note pulling the response data as I expected
            dynamicHtmlBody = document.createElement("span");
            dynamicHtmlBody.textContent = params.response;
            requestDiv.appendChild(dynamicHtmlBody);
        }

        if (params.redirectResponse)
            appendResponse(params.requestId, params.redirectResponse);

        var requestLine = document.createElement("div");
        if (params.request.url.includes("XXX.XXX.com") && params.request.url.includes(".XXXX")) {
            requestLine.textContent = "\n" + params.request.method + " " +
                parseURL(params.request.url).path + " HTTP/2.0";
            requestDiv.appendChild(requestLine);
            document.getElementById("container").appendChild(requestDiv);
        }
    } else if (message == "Network.responseReceived") {
        appendResponse(params.requestId, params.response);
    }}
  function appendResponse(requestId, response) {
    var requestDiv = requests[requestId];
    requestDiv.appendChild(formatHeaders(response.requestHeaders));

    var statusLine = document.createElement("div");
    statusLine.textContent = "\nHTTP/2.0 " + response.status + " " +
        response.statusText;
    requestDiv.appendChild(statusLine);
    requestDiv.appendChild(formatHeaders(response.headers));
    //requestDiv.appendChild(formatHeaders(response.responseText));
}

Не знаете, как получить полный ответ, пожалуйста, помогите.

Мне нужны заголовок запроса, FormData и полный ответ в промежуток, который я создал с помощью приведенных ниже фрагментов кода из приведенных выше фрагментов кода, которые я предоставил.

   `dynamicHtmlBody = document.createElement("span");
    dynamicHtmlBody.textContent = params.response;
    requestDiv.appendChild(dynamicHtmlBody); `

Мне удалось получить только запрос (params.response.requestHeaders) и заголовки ответа (params.response.headers), но не было способов получить responseText и данные формы: - (

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...