chrome.devtools.network

Описание

Используйте API chrome.devtools.network для получения информации о сетевых запросах, отображаемой инструментами разработчика на панели «Сеть».

Манифест

Для использования этого API в манифесте необходимо указать следующие ключи.

"devtools_page"

Для получения общего представления об использовании API инструментов разработчика см. раздел «Краткое описание API инструментов разработчика».

Обзор

Информация о сетевых запросах представлена ​​в формате HTTP Archive ( HAR ). Описание HAR выходит за рамки данного документа; пожалуйста, обратитесь к спецификации HAR v1.2 .

Что касается HAR, метод chrome.devtools.network.getHAR() возвращает весь лог HAR , а событие chrome.devtools.network.onRequestFinished передает запись HAR в качестве аргумента в функцию обратного вызова события.

Обратите внимание, что содержимое запроса не предоставляется в составе HAR по соображениям эффективности. Вы можете вызвать метод getContent() объекта request для получения содержимого.

Если окно «Инструменты разработчика» открывается после загрузки страницы, некоторые запросы могут отсутствовать в массиве записей, возвращаемом функцией getHAR() . Перезагрузите страницу, чтобы получить все запросы. Как правило, список запросов, возвращаемый функцией getHAR() , должен совпадать со списком, отображаемым на панели «Сеть».

Примеры

Следующий код регистрирует URL-адреса всех изображений размером более 40 КБ по мере их загрузки:

chrome.devtools.network.onRequestFinished.addListener(
  function(request) {
    if (request.response.bodySize > 40*1024) {
      chrome.devtools.inspectedWindow.eval(
          'console.log("Large image: " + unescape("' +
          escape(request.request.url) + '"))');
    }
  }
);

Чтобы опробовать этот API, установите примеры API из репозитория chrome-extension-samples .

Типы

Request

Представляет собой сетевой запрос к ресурсу документа (скрипту, изображению и т. д.). См. спецификацию HAR для получения дополнительной информации.

Характеристики

  • получить контент

    пустота

    Обещать

    Возвращает содержимое тела ответа.

    Функция getContent выглядит следующим образом:

    (callback?: function) => {...}

    • перезвонить

      функция необязательна

      Параметр callback выглядит следующим образом:

      (response: object) => void

      • ответ

        объект

        В ожидании

        Объект, содержащий тело ответа и его кодировку.

        • содержание

          нить

          Содержание ответа (потенциально закодированное).

        • кодирование

          нить

          Пусто, если содержимое не закодировано, в противном случае — название кодировки. В настоящее время поддерживается только base64.

    • возвраты

      Promise<object>

      В ожидании

      Функция, которая получает тело ответа после завершения запроса.

      Поддержка промисов доступна только для Manifest V3 и более поздних версий; для других платформ необходимо использовать колбэки.

Методы

getHAR()

Обещать
chrome.devtools.network.getHAR(
  callback?: function,
)
: Promise<object>

Возвращает журнал HAR, содержащий все известные сетевые запросы.

Параметры

  • перезвонить

    функция необязательна

    Параметр callback выглядит следующим образом:

    (harLog: object) => void

    • harLog

      объект

      Журнал HAR. Подробности см. в спецификации HAR.

Возвраты

  • Promise<object>

    В ожидании

    Функция, которая получает журнал HAR после завершения запроса.

    Поддержка промисов доступна только для Manifest V3 и более поздних версий; для других платформ необходимо использовать колбэки.

События

onNavigated

chrome.devtools.network.onNavigated.addListener(
  callback: function,
)

Событие срабатывает, когда проверяемое окно переходит на новую страницу.

Параметры

  • перезвонить

    функция

    Параметр callback выглядит следующим образом:

    (url: string) => void

    • url

      нить

onRequestFinished

chrome.devtools.network.onRequestFinished.addListener(
  callback: function,
)

Событие срабатывает, когда сетевой запрос завершен и все данные запроса доступны.

Параметры

  • перезвонить

    функция

    Параметр callback выглядит следующим образом:

    (request: Request) => void