Skip to main content

Module fields

Module fields 

Source
Expand description

请求体里的字段名:哪些是某个类型认得的,哪些没人认。

serde 派生的 Deserialize 会把结构体的全部字段名(重命名之后的)交给 Deserializer::deserialize_struct。这里写一个只做这一件事的 Deserializer:收下字段表就报错返回, 不真的解析任何东西。这样字段表和结构体定义永远一致,不用手写第二份。

用法有两种:

  • pagesift 自己的入口(MCP、Python、Node 的 JSON 形参)用 reject_unknown:有未知字段就拒收, 错误里列出字段名;
  • 兼容 Firecrawl 的 /v1、/v2 用 unknown:照常接收,把没人认的字段名写进 warnings(代码 ignored_fields)。

Constants§

CLIENT_IDENTITY
客户端自报身份的字段(Firecrawl SDK 每次都带):不是选项,不影响结果,也不算“被忽略”。
IGNORED_FIELDS
警告代码:请求里有字段被忽略(兼容接口照常接收,但如实列出)。

Functions§

ignored_warning
ignored_fields: a, b 形式的警告;没有被忽略的字段时返回 None。
names
T 认得的顶层字段名(serde 重命名之后的)。T 必须是不带 flatten 的派生结构体, 否则返回空表(带 flatten 的结构体走的是 map,没有字段表)。
reject_unknown
有未知字段就拒收,错误里列出全部未知字段名。
scrape_request
单页抓取请求(url 加 ScrapeOptions 的全部字段)认得的字段。
unknown
对象里不在 known 中的键(按 serde_json::Map 的键序,即字典序)。