puppeteer/website/versioned_docs/version-9.1.1/puppeteer.cdpsession.md
2021-08-10 11:09:48 +01:00

1.7 KiB

Home > puppeteer > CDPSession

CDPSession class

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

Signature:

export declare class CDPSession extends EventEmitter

Extends: EventEmitter

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.target().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
});

Methods

Method Modifiers Description
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.
send(method, paramArgs)