Skip to main content

Module api

Module api 

Source
Expand description

高层 API 类 — Playwright 风格的 Browser/BrowserContext/Page/Frame/… 抽象。

§D 类 method(REQ-BAO-API-006)

D 类 62 method 是“纯本地状态访问“的 getter — 不触发任何 CDP 命令往返。 它们读取 Page/BrowserContext 等高层类内部缓存的本地状态(包括 EventEmitter handler 列表、frame tree、本地实例引用等)。

§模块组织

  • event_emitter:共享 EventEmitter trait + Inner
  • browser:Browser 类(is_connected/version/disconnect/close/…)
  • page:Page 类(核心,~30 D method)
  • frame:Frame 类
  • element_handle:ElementHandle(继承自 JSHandle)
  • keyboard:Keyboard(Page 持有的本地实例)

§单线程约束

所有类 !Send + !Sync,用 Rc<RefCell<...>> 共享 — 与 servo JSContext 单线程寄生模型一致(DEC-JSC-001)。

@trace REQ-BAO-API-006 [level:library]

Modules§

accessibility
Accessibility — 无障碍树访问。
browser
Browser — 高层 Browser 类(Playwright 风格)。
browser_context
BrowserContext — 浏览器上下文(incognito / 隔离)。
console_message
ConsoleMessage — Runtime.consoleAPICalled 事件的消息。
coverage
Coverage — JS/CSS 覆盖率追踪。
dialog
Dialog — JavaScript dialog(alert/confirm/prompt/beforeunload)。
element_handle
ElementHandle — DOM Element 句柄(继承 JSHandle)。
event_emitter
EventEmitter — Playwright 风格事件订阅 trait + 单线程 Inner 实现。
frame
Frame — 浏览器 Frame(tree 节点)。
js_handle
JSHandle — 远程 JS 对象句柄。
keyboard
Keyboard — Page 持有的键盘输入实例。
mouse
Mouse — Page 持有的鼠标输入实例。
page
Page — 浏览器页面(target / frame tree / 输入设备)。
request
Request — HTTP 请求句柄(Network.requestWillBeSent 事件)。
response
Response — HTTP 响应句柄(Network.responseReceived 事件)。
touchscreen
Touchscreen — Page 持有的触摸输入实例。
tracing
Tracing — Performance tracing(Chrome trace event)。

Macros§

delegate_event_emitter
EventEmitter trait 委托给 Rc<EventEmitterInner> 的宏。

Structs§

Accessibility
Accessibility 本地状态(Page 持有的实例)。
BrowserContext
BrowserContext 本地状态。
BrowserOptions
BrowserOptions — Browser 构造配置。
ConsoleMessage
ConsoleMessage 本地状态。
ContextOptions
ContextOptions — BrowserContext 配置。
Coverage
Coverage 本地状态(Page 持有的实例)。
Dialog
Dialog 本地状态。
ElementHandle
ElementHandle 本地状态(包装 JSHandle)。
EventEmitterInner
EventEmitter 单线程 Inner — 用 Rc<RefCell<...>> 共享。
Frame
Frame 树节点。
HighLevelBrowser
Browser 本地状态(高层)。
JSHandle
JSHandle 本地状态。
Keyboard
Keyboard 本地状态(Page 持有的实例)。
Mouse
Mouse 本地状态(Page 持有的实例)。
Page
Page 本地状态(核心类)。
PageTargetInfo
TargetInfo — CDP target 信息(从 Target.targetInfoChanged 事件更新)。
Request
Request 本地状态(Network 事件链产生的请求记录)。
Response
Response 本地状态。
Touchscreen
Touchscreen 本地状态(Page 持有的实例)。
Tracing
Tracing 本地状态(Page 持有的实例)。
Viewport
Viewport(viewport 配置)。

Enums§

PermissionOverride
Permission override 类型(CDP Permission name)。
SubscriptionResult
事件订阅结果。

Traits§

EventEmitter
EventEmitter trait — 高层 API 类共享接口。

Type Aliases§

EventHandler
事件 handler 闭包。Arc<dyn Fn> 便于克隆传递(Rc 不可跨所有权)。
HandlerId
Handler ID。全局递增(单线程内),用作 off() 索引。
Pid
Process ID 类型。