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()](./puppeteer.cdpsession.connection.md) The underlying connection for this session, if any.
[detach()](./puppeteer.cdpsession.detach.md) 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()](./puppeteer.cdpsession.id.md) Returns the session's id.
[send(method, params, options)](./puppeteer.cdpsession.send.md)