Provides DevTools API for instrumentation of Node and Chromium Debugger (experimental)
npm install devtools-client
npm install devtools-client
`
$3
The module can launch a user specified NodeJS script or connect to an existent DevTools session.
#### Launch Node Script and attach to the Debugger
`
const DevToolsClient = require('devtools-client');
const Controller = new DevToolsClient();
Controller.launch('/path/to/some.js').then(({Debugger, Profiler, Runtime}) => {
// resolves with an object containing all available DevTools domains
});
`
#### Connect to an existent Debugger session
1. Launch your Node script with the --inspect argument
`
$ node --inspect some.js
Debugger listening on ws://127.0.0.1:9229/08f8c820-28e7-43b1-b6f6-c39f170e489d
For help, see: https://nodejs.org/en/docs/inspector
`
2. Set the nodeWSEndpoint property to the WebSocket URL
`
const DevToolsClient = require('devtools-client');
const Controller = new DevToolsClient();
Controller.connect({
nodeWSEndpoint: 'ws://127.0.0.1:9229/08f8c820-28e7-43b1-b6f6-c39f170e489d'
}).then(({Debugger, Runtime, Profiler}) => {
// resolves with an object containing all available DevTools domains
});
`
$3
Retrieve all script sources loaded
This example enables the Debugger domain and listens to scriptParsed events
`
const DevToolsClient = require('devtools-client');
const Controller = new DevToolsClient();
Controller.launch('/path/to/some.js').then(async ({Debugger}) => {
Debugger.on('scriptParsed', ({scriptId, url}) => {
console.log(url);
});
Debugger.enable();
});
``