Classe : Debugger
Classe : Debugger
Un transport alternatif pour le protocole de débogage distant de Chrome.
Process: Main
This class is not exported from the 'electron' module. Elle n'est disponible qu'en tant que valeur de retour des autres méthodes dans l'API Electron.
Chrome Developer Tools possède une liaison spéciale disponible à l'exécutable JavaScript qui permet d'interagir avec les pages et de les instrumentaliser.
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')
Événements d’instance
Événement : 'detach'
Retourne :
eventEventreasonstring - Raison du détachement du débogueur.
Émis lorsque la session de débogage est terminée. Cela se produit lorsque webContents est fermé, ou que devtools est appelé pour le webContentsattaché .
Événement : 'message'
Retourne :
eventEventmethodstring - Nom de la méthode.paramsany- Paramètres de l''événement définis par l'attribut 'parameters' du protocole de débogage distant.sessionIdstring - Identifiant unique de la session de débogage attachée, correspondra à la valeur envoyée depuisdebugger.sendCommand.
Émis chaque fois que la cible de débogage émet un événement d'instrumentation.
Méthodes d’instance
debugger.attach([protocolVersion])
protocolVersionstring (facultatif) - Version requise du protocole de débogage.
Attache le débogueur au webContents.
debugger.isAttached()
Retourne boolean - Indique si un débogueur est attaché au webContents.
debugger.detach()
Détache le débogueur depuis le webContents.
debugger.sendCommand(method[, commandParams, sessionId])
méthodestring - Nom de la méthode, doit être une des méthodes définies par le protocole de débogage distant.commandParamsany (facultatif) - Objet JSON avec les paramètres de la requête.sessionIdstring (facultatif) - envoie la commande à la cible avec l'identifiant de session de débogage associé. La valeur initiale peut être obtenue en envoyant le message Target.attachToTarget.
Retourne Promise<any> - Une promesse qui se résout avec la réponse définie par l'attribut 'returns' de la description de la commande dans le protocole de débogage distant ou indique l'échec de la commande qand elle est rejetée.
Envoi une commande au débogueur.