Skip to main content
Version: Next

CDPSession class

The CDPSession instances are used to talk raw Chrome Devtools Protocol.

Signature​

export declare abstract class CDPSession extends EventEmitter<CDPSessionEvents>

Extends: EventEmitter<CDPSessionEvents>

Remarks​

Protocol methods can be called with CDPSession.send() method and protocol events can be subscribed to with CDPSession.on method.

Useful links: DevTools Protocol Viewer and Getting Started with DevTools Protocol.

The constructor for this class is marked as internal. Third-party code should not call the constructor directly or create subclasses that extend the CDPSession class.

Example​

const client = await page.createCDPSession();
await client.send('Animation.enable');
client.on('Animation.animationCreated', () =>
console.log('Animation created!'),
);
const response = await client.send('Animation.getPlaybackRate');
console.log('playback rate is ' + response.playbackRate);
await client.send('Animation.setPlaybackRate', {
playbackRate: response.playbackRate / 2,
});

Properties​

Property

Modifiers

Type

Description

detached

readonly

boolean

True if the session has been detached, false otherwise.

Methods​

Method

Modifiers

Description

connection()

The underlying connection for this session, if any.

detach()

Detaches the cdpSession from the target. Once detached, the cdpSession object won't emit any events and can't be used to send messages.

id()

Returns the session's id.

send(method, params, options)