Class CdpModule
Provides access to the Chrome DevTools Protocol (CDP) over BiDi.
public class CdpModule : Module
- Inheritance
-
ModuleCdpModule
- Inherited Members
-
Module.CreateEventSource<TEventArgs>(EventDescriptor<TEventArgs>)
Properties
Accessibility
[Experimental("BIDICDP001")]
public IAccessibility Accessibility { get; }
Property Value
Ads
A domain for ad-related metrics and data.
[Experimental("BIDICDP001")]
public IAds Ads { get; }
Property Value
Animation
[Experimental("BIDICDP001")]
public IAnimation Animation { get; }
Property Value
Audits
Audits domain allows investigation of page violations and possible improvements.
[Experimental("BIDICDP001")]
public IAudits Audits { get; }
Property Value
Autofill
Defines commands and events for Autofill.
[Experimental("BIDICDP001")]
public IAutofill Autofill { get; }
Property Value
BackgroundService
Defines events for background web platform features.
[Experimental("BIDICDP001")]
public IBackgroundService BackgroundService { get; }
Property Value
BluetoothEmulation
This domain allows configuring virtual Bluetooth devices to test the web-bluetooth API.
[Experimental("BIDICDP001")]
public IBluetoothEmulation BluetoothEmulation { get; }
Property Value
Browser
The Browser domain defines methods and events for browser managing.
public IBrowser Browser { get; }
Property Value
CSS
This domain exposes CSS read/write operations. All CSS objects (stylesheets, rules, and styles) have an associated id used in subsequent operations on the related object. Each object type has a specific id structure, and those are not interchangeable between objects of different kinds. CSS objects can be loaded using the get*ForNode() calls (which accept a DOM node id). A client can also keep track of stylesheets via the styleSheetAdded/styleSheetRemoved events and subsequently load the required stylesheet contents using the getStyleSheetText methods.
[Experimental("BIDICDP001")]
public ICSS CSS { get; }
Property Value
CacheStorage
[Experimental("BIDICDP001")]
public ICacheStorage CacheStorage { get; }
Property Value
Cast
A domain for interacting with Cast, Presentation API, and Remote Playback API functionalities.
[Experimental("BIDICDP001")]
public ICast Cast { get; }
Property Value
Console
This domain is deprecated - use Runtime or Log instead.
[Obsolete]
public IConsole Console { get; }
Property Value
CrashReportContext
This domain exposes the current state of the CrashReportContext API.
[Experimental("BIDICDP001")]
public ICrashReportContext CrashReportContext { get; }
Property Value
DOM
This domain exposes DOM read/write operations. Each DOM Node is represented with its mirror object that has an id. This id can be used to get additional information on the Node, resolve it into the JavaScript object wrapper, etc. It is important that client receives DOM events only for the nodes that are known to the client. Backend keeps track of the nodes that were sent to the client and never sends the same node twice. It is client's responsibility to collect information about the nodes that were sent to the client. Note that iframe owner elements will return corresponding document elements as their child nodes.
public IDOM DOM { get; }
Property Value
DOMDebugger
DOM debugging allows setting breakpoints on particular DOM operations and events. JavaScript execution will stop on these operations as if there was a regular breakpoint set.
public IDOMDebugger DOMDebugger { get; }
Property Value
DOMSnapshot
This domain facilitates obtaining document snapshots with DOM, layout, and style information.
[Experimental("BIDICDP001")]
public IDOMSnapshot DOMSnapshot { get; }
Property Value
DOMStorage
Query and modify DOM storage.
[Experimental("BIDICDP001")]
public IDOMStorage DOMStorage { get; }
Property Value
Debugger
Debugger domain exposes JavaScript debugging capabilities. It allows setting and removing breakpoints, stepping through execution, exploring stack traces, etc.
public IDebugger Debugger { get; }
Property Value
DeviceAccess
[Experimental("BIDICDP001")]
public IDeviceAccess DeviceAccess { get; }
Property Value
DeviceOrientation
[Experimental("BIDICDP001")]
public IDeviceOrientation DeviceOrientation { get; }
Property Value
DigitalCredentials
This domain allows interacting with the Digital Credentials API for automation.
[Experimental("BIDICDP001")]
public IDigitalCredentials DigitalCredentials { get; }
Property Value
Emulation
This domain emulates different environments for the page.
public IEmulation Emulation { get; }
Property Value
EventBreakpoints
EventBreakpoints permits setting JavaScript breakpoints on operations and events occurring in native code invoked from JavaScript. Once breakpoint is hit, it is reported through Debugger domain, similarly to regular breakpoints being hit.
[Experimental("BIDICDP001")]
public IEventBreakpoints EventBreakpoints { get; }
Property Value
Extensions
Defines commands and events for browser extensions.
[Experimental("BIDICDP001")]
public IExtensions Extensions { get; }
Property Value
FedCm
This domain allows interacting with the FedCM dialog.
[Experimental("BIDICDP001")]
public IFedCm FedCm { get; }
Property Value
Fetch
A domain for letting clients substitute browser's network layer with client code.
public IFetch Fetch { get; }
Property Value
FileSystem
[Experimental("BIDICDP001")]
public IFileSystem FileSystem { get; }
Property Value
HeadlessExperimental
This domain provides experimental commands only supported in headless mode.
[Experimental("BIDICDP001")]
public IHeadlessExperimental HeadlessExperimental { get; }
Property Value
HeapProfiler
[Experimental("BIDICDP001")]
public IHeapProfiler HeapProfiler { get; }
Property Value
IO
Input/Output operations for streams produced by DevTools.
public IIO IO { get; }
Property Value
IndexedDB
[Experimental("BIDICDP001")]
public IIndexedDB IndexedDB { get; }
Property Value
Input
public IInput Input { get; }
Property Value
Inspector
[Experimental("BIDICDP001")]
public IInspector Inspector { get; }
Property Value
LayerTree
[Experimental("BIDICDP001")]
public ILayerTree LayerTree { get; }
Property Value
Log
Provides access to log entries.
public ILog Log { get; }
Property Value
Media
This domain allows detailed inspection of media elements.
[Experimental("BIDICDP001")]
public IMedia Media { get; }
Property Value
Memory
[Experimental("BIDICDP001")]
public IMemory Memory { get; }
Property Value
Network
Network domain allows tracking network activities of the page. It exposes information about http, file, data and other requests and responses, their headers, bodies, timing, etc.
public INetwork Network { get; }
Property Value
Overlay
This domain provides various functionality related to drawing atop the inspected page.
[Experimental("BIDICDP001")]
public IOverlay Overlay { get; }
Property Value
PWA
This domain allows interacting with the browser to control PWAs.
[Experimental("BIDICDP001")]
public IPWA PWA { get; }
Property Value
Page
Actions and events related to the inspected page belong to the page domain.
public IPage Page { get; }
Property Value
Performance
public IPerformance Performance { get; }
Property Value
PerformanceTimeline
Reporting of performance timeline events, as specified in https://w3c.github.io/performance-timeline/#dom-performanceobserver.
[Experimental("BIDICDP001")]
public IPerformanceTimeline PerformanceTimeline { get; }
Property Value
Preload
[Experimental("BIDICDP001")]
public IPreload Preload { get; }
Property Value
Profiler
public IProfiler Profiler { get; }
Property Value
Runtime
Runtime domain exposes JavaScript runtime by means of remote evaluation and mirror objects. Evaluation results are returned as mirror object that expose object type, string representation and unique identifier that can be used for further object reference. Original objects are maintained in memory unless they are either explicitly released or are released along with the other objects in their object group.
public IRuntime Runtime { get; }
Property Value
Schema
This domain is deprecated.
[Obsolete]
public ISchema Schema { get; }
Property Value
Security
public ISecurity Security { get; }
Property Value
ServiceWorker
[Experimental("BIDICDP001")]
public IServiceWorker ServiceWorker { get; }
Property Value
SmartCardEmulation
[Experimental("BIDICDP001")]
public ISmartCardEmulation SmartCardEmulation { get; }
Property Value
Storage
[Experimental("BIDICDP001")]
public IStorage Storage { get; }
Property Value
SystemInfo
The SystemInfo domain defines methods and events for querying low-level system information.
[Experimental("BIDICDP001")]
public ISystemInfo SystemInfo { get; }
Property Value
Target
Supports additional targets discovery and allows to attach to them.
public ITarget Target { get; }
Property Value
Tethering
The Tethering domain defines methods and events for browser port binding.
[Experimental("BIDICDP001")]
public ITethering Tethering { get; }
Property Value
Tracing
public ITracing Tracing { get; }
Property Value
WebAudio
This domain allows inspection of Web Audio API. https://webaudio.github.io/web-audio-api/
[Experimental("BIDICDP001")]
public IWebAudio WebAudio { get; }
Property Value
WebAuthn
This domain allows configuring virtual authenticators to test the WebAuthn API.
[Experimental("BIDICDP001")]
public IWebAuthn WebAuthn { get; }
Property Value
WebMCP
[Experimental("BIDICDP001")]
public IWebMCP WebMCP { get; }
Property Value
Methods
GetSessionAsync(BrowsingContext, GetSessionOptions?, CancellationToken)
Gets the CDP session identifier for the specified browsing context.
public Task<GetSessionResult> GetSessionAsync(BrowsingContext context, GetSessionOptions? options = null, CancellationToken cancellationToken = default)
Parameters
contextBrowsingContextThe browsing context to get the session for.
optionsGetSessionOptionsOptional command options.
cancellationTokenCancellationTokenA token to cancel the asynchronous operation.
Returns
- Task<GetSessionResult>
The session result containing the CDP session identifier.
SendCommandAsync(string, JsonElement, string?, CancellationToken)
Sends a CDP command with the specified method and parameters.
public Task<SendCommandResult> SendCommandAsync(string method, JsonElement parameters, string? session = null, CancellationToken cancellationToken = default)
Parameters
methodstringThe CDP method name (e.g. "Page.navigate").
parametersJsonElementThe JSON parameters for the command.
sessionstringOptional CDP session override.
cancellationTokenCancellationTokenA token to cancel the asynchronous operation.
Returns
- Task<SendCommandResult>
The raw command result.