Класс: 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