Skip to content

ClientOptions

⚙️ `pkg/sdk/options.go` — Client 与截图选项。

📁 源码:pkg/sdk/options.go

类型

符号源码说明
ClientOptionsL11Client 级配置
DefaultClientOptions()L97安全默认
ScreenshotOptionsL118单次截图配置
toRunnerOptions(co)L201转 runner.Options
mergeWithScreenshotOptions(base, so)L326合并截图选项
formHasConfig(form)L557表单是否有配置
applyDevicePreset(device, opts)L564应用设备预设

ClientOptions 字段

字段说明
MaxConcurrent池大小/并发上限
ChromePath本地 Chrome 路径
WSSURL远程调试 URL
IdleTimeout空闲超时
BlacklistEnabledSSRF 防护开关
OutputPath默认输出目录

两层配置

  • ClientOptions:跨多次截图的稳定配置(Chrome、池大小)
  • ScreenshotOptions:单次覆盖(视口、证据、代理)

DefaultClientOptions

没特殊需求就用默认

DefaultClientOptions 提供开箱即用的安全默认

  • ✅ 启用黑名单(SSRF 防护)
  • ✅ 合理并发上限与超时
  • ✅ 合理空闲超时

99% 的场景直接 DefaultClientOptions() 起步即可,按需覆盖个别字段,别从零构造。

设备预设

applyDevicePreset:当指定 device 时,从 device_presets 取视口/UA/DPR 应用到 Options。

ClientOptions 配置维度

ClientOptionsScreenshotOptions 的字段按职责归类:

ClientOptions 设跨多次截图的稳定基线,ScreenshotOptions 做单次覆盖,二者经 mergeWithScreenshotOptions 合并。

下一步

基于 MIT 许可发布