An alternate transport for Chrome’s remote debugging protocol.
Process: Main
Chrome Developer Tools has a special binding available at JavaScript runtime that allows interacting with pages and instrumenting them.
const {BrowserWindow} = require('electron') let 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')
debugger.attach([protocolVersion])
protocolVersion
String (optional) - Requested debugging protocol version.Attaches the debugger to the webContents
.
debugger.isAttached()
Returns Boolean
- Whether a debugger is attached to the webContents
.
debugger.detach()
Detaches the debugger from the webContents
.
debugger.sendCommand(method[, commandParams, callback])
method
String - Method name, should be one of the methods defined by the remote debugging protocol.commandParams
Object (optional) - JSON object with request parameters.callback
Function (optional) - Response error
Object - Error message indicating the failure of the command.result
Any - Response defined by the ‘returns’ attribute of the command description in the remote debugging protocol.Send given command to the debugging target.
event
Eventreason
String - Reason for detaching debugger.Emitted when debugging session is terminated. This happens either when webContents
is closed or devtools is invoked for the attached webContents
.
event
Eventmethod
String - Method name.params
Object - Event parameters defined by the ‘parameters’ attribute in the remote debugging protocol.Emitted whenever debugging target issues instrumentation event.
© 2013–2017 GitHub Inc.
Licensed under the MIT license.
https://electron.atom.io/docs/api/debugger/