Skip to content

结果与证据

📦 `pkg/sdk/result.go` — 结果包装与便捷提取。

📁 源码:pkg/sdk/result.go

类型

符号源码说明
EvidenceSummaryL15证据摘要
EvidenceBundleL30完整证据包
ResultWrapperL41Result 包装器
WrapResult(r)L46包装
hasTLSInfo(tls)L352是否有 TLS 信息
writePrettyJSON(path, value)L378美化写 JSON

Result 字段(核心)

*models.Result 是一切采集的顶层结构,字段见 Result Schemapkg/models

Result
├── URL / FinalURL / Status / Title
├── Screenshot []byte (PNG)
├── HTML / Headers / Cookies / ConsoleLogs
├── NetworkLogs (HAR)
├── Technologies []Technology
├── PerceptionHash (pHash)
├── TLS 信息
├── Timestamp / Duration
└── Error (若有)

字节提取

screenshotBytesFromResultclient.go#L231)从 Result 安全取出截图字节,供 *Bytes 系列方法使用。

EvidenceBundle

批量场景的"证据打包袋"

EvidenceBundle 把截图+HTML+HAR+Console+Cookies 一次打包,批量场景常用——不用逐个字段取,一个结构拿全证据,配合 writePrettyJSON 直接落盘成可读 JSON 存档。

包装流程

Result 与证据字段关系

*models.Result 是顶层结构,各类证据以字段形式挂载其下,关系如下:

EvidenceSummary 取关键字段做摘要,EvidenceBundle 把截图+HTML+HAR+Console+Cookies 一次打包,便于批量存档。

下一步

基于 MIT 许可发布