Spec-Zone.ru › Electron

Класс: Debugger

Класс: Debugger​

Альтернативный транспорт для протокола удалённой отладки Chrome.

Процесс: Главный
Этот класс не экспортируется из модуля 'electron'. Он доступен только в качестве возвращаемого значения других методов API Electron.

Инструменты разработчика Chrome имеют специальную привязку, доступную во время выполнения JavaScript, которая позволяет взаимодействовать со страницами и проводить их инструментальную настройку.

const { BrowserWindow } = require('electron')
const win = new BrowserWindow()

try {
  win.webContents.debugger.attach('1.1')
} catch (err) {
  console.log('Debugger attach failed : ', err)
}

win.webContents.debugger.on('detach', (event, reason) => {
  console.log('Debugger detached due to : ', reason)
})

win.webContents.debugger.on('message', (event, method, params) => {
  if (method === 'Network.requestWillBeSent') {
    if (params.request.url === 'https://www.github.com') {
      win.webContents.debugger.detach()
    }
  }
})

win.webContents.debugger.sendCommand('Network.enable')

События экземпляра​

Событие: 'detach'​

Возвращает:

  • event Событие
  • reason строка - Причина отсоединения отладчика.

Вызывается при завершении сеанса отладки. Это происходит, когда webContents закрывается или вызываются инструменты разработчика для прикреплённой webContents.

Событие: 'message'​

Возвращает:

  • event Событие
  • method строка - Имя метода.
  • params любой - Параметры события, определённые атрибутом 'parameters' в протоколе удалённой отладки.
  • sessionId строка - Уникальный идентификатор прикреплённого сеанса отладки, будет соответствовать значению, отправленному из debugger.sendCommand.

Вызывается всякий раз, когда целевой объект отладки вызывает событие инструментальной настройки.

Методы экземпляра​

debugger.attach([protocolVersion])​

  • protocolVersion строка (необязательно) - Запрашиваемая версия протокола отладки.

Присоединяет отладчик к webContents.

debugger.isAttached()​

Возвращает boolean - Присоединён ли отладчик к webContents.

debugger.detach()​

Отсоединяет отладчик от webContents.

debugger.sendCommand(method[, commandParams, sessionId])​

  • method строка - Имя метода, должно быть одним из методов, определённых в протоколе удалённой отладки.
  • commandParams любой (необязательно) - JSON-объект с параметрами запроса.
  • sessionId строка (необязательно) - Отправка команды целевому объекту с связанным идентификатором сеанса отладки. Изначальное значение можно получить, отправив сообщение Target.attachToTarget.

Возвращает Promise<any> - промис, который выполняется с ответом, определённым атрибутом 'returns' описания команды в протоколе удалённой отладки, или отклоняется, указывая на неудачу команды.

Отправляет заданную команду целевому объекту отладки.

© GitHub Inc.
Licensed under the MIT license.
https://www.electronjs.org/docs/latest/api/debugger

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API