debby
v1.0.5
Published
Debugging Interface for Chrome Remote Debugging Protocol 1.1
Downloads
1
Readme
debby
Provides functionality for sending commands and handle notifications on Chrome targets using Remote Debugging Protocol 1.1.
Installation
Install through npm
$ npm install debby --save
Usage
Start Chrome with the --remote-debugging-port=<port> to enable the protocol.
$ google-chrome --remote-debugging-port=9222
First, add debby
var debby = require('debby');
// ...
To send commands using Remote Debugging Protocol 1.1, use a client connected to a target.
var client = debby.connect('ws://localhost:9222/<path>');
client.send('Console.enable');
client.close();
List all the inspectable targets on a given port
var targets = debby.list(9222, targets => {
for(target on targets) {
// Do something
}
});
API
Class: Client
client.connect(url)
client.send(method, [params], [callback])
client.close()
Class: Console
Event 'clear'
Emitted upon Console.messagesCleared
notification.
Class: Runtime
Event 'create'
Parameters:
- context ( ExecutionContextDescription )
Emitted upon Runtime.executionContextCreated
notification.
Class: Debugger
Event 'resolve'
Parameters:
- breakpointId ( BreakpointId )
- location ( Location )
Emitted upon Debugger.breakpointResolved
notification.
Event 'clear'
Emitted upon Debugger.globalObjectCleared
notification.
Event 'pause'
Parameters:
- callFrames ( array of CallFrame )
- reason ( enumerated string ["CSPViolation" , "DOM" , "EventListener" , "XHR" , "assert" , "debugCommand" , "exception" , "other" ] )
- data ( optional object )
Emitted upon Debugger.paused
notification.
Event 'resume'
Emitted upon Debugger.resumed
notification.
Event 'fail'
Parameters:
- url ( string )
- scriptSource ( string )
- errorLine ( integer )
- errorMessage ( string )
Emitted upon Debugger.scriptFailedToParse
notification.
Event 'parse'
Parameters:
- scriptId ( ScriptId )
- url ( string )
- startLine ( integer )
- startColumn ( integer )
- endLine ( integer )
- endColumn ( integer )
- isContentScript ( optional boolean )
- sourceMapURL ( optional string )
Emitted upon Debugger.scriptParsed
notification.
Class: Page
Event 'content'
Parameters:
- timestamp ( number )
Emitted upon Page.domContentEventFired
notification.
Event 'attach'
Parameters:
- frameId ( FrameId )
Emitted upon Page.frameAttached
notification.
Event 'detach'
Parameters:
- frameId ( FrameId )
Emitted upon Page.frameDetached
notification.
Event 'navigate'
Parameters:
- frame ( Frame )
Emitted upon Page.frameNavigated
notification.
Event 'load'
Parameters:
- timestamp ( number )
Emitted upon Page.loadEventFired
notification.
Class: Timeline
Event 'record'
Parameters:
- record ( TimelineEvent )
Emitted upon Timeline.eventRecorded
notification.
Class: Network
Event 'data'
Parameters:
Emitted upon Network.dataReceived
notification.
Event 'fail'
Parameters:
Emitted upon Network.loadingFailed
notification.
Event 'finish'
Parameters:
Emitted upon Network.loadingFinished
notification.
Event 'cache'
Parameters:
- requestId ( RequestId )
Emitted upon Network.requestServedFromCache
notification.
Event 'request'
Parameters:
- requestId ( RequestId )
- loaderId ( LoaderId )
- documentURL ( string )
- request ( Request )
- timestamp ( Timestamp )
- initiator ( Initiator )
- redirectResponse ( optional Response )
Emitted upon Network.requestWillBeSent
notification.
Event 'response'
Parameters:
- requestId ( RequestId )
- loaderId ( LoaderId )
- timestamp ( Timestamp )
- type ( Page.ResourceType )
- response ( Response )
Emitted upon Network.responseReceived
notification.
Class: Dom
Event 'modify'
Parameters:
- nodeId ( NodeId )
- name ( string )
- value ( string )
Emitted upon DOM.attributeModified
notification.
Event 'detach'
Parameters:
- nodeId ( NodeId )
- name ( string )
Emitted upon DOM.attributeRemoved
notification.
Event 'change'
Parameters:
- nodeId ( NodeId )
- characterData ( string )
Emitted upon DOM.characterDataModified
notification.
Event 'count'
Parameters:
- nodeId ( NodeId )
- childNodeCount ( integer )
Emitted upon DOM.childNodeCountUpdated
notification.
Event 'insert'
Parameters:
Emitted upon DOM.childNodeInserted
notification.
Event 'remove'
Parameters:
Emitted upon DOM.childNodeRemoved
notification.
Event 'update'
Emitted upon DOM.documentUpdated
notification.
Event 'assemble'
Parameters:
Emitted upon DOM.setChildNodes
notification.