Expand description
pagesift 的 HTTP 接口:Firecrawl v2 兼容层、pagesift 扩展、健康检查和监控指标, 以及部署成服务要用的任务持久化、webhook、按 API key 的限流和配额。
协议、校验和任务管理在这里;真正的抓取由实现 Engine 的引擎完成。
Modules§
- jina
- Jina Reader protocol adapter for PageSift.
Implements
GET /r/{*url}andPOST /rfor direct markdown and SSE event streaming. - types
- Firecrawl v1/v2 request and response types.
Structs§
- ApiError
- Config
- Crawl
Resume - 中断的爬取任务恢复时的进度。完成的页面以文档的
metadata.sourceURL(失败的以出错的 URL)为准。 - Job
- Jobs
- KeyLimits
- 一个 API key 的限额,各项不设就是不限。
- Timeouts
- 服务端超时,防 slowloris 和挂死的请求。
- Webhook
Config - 请求里的
webhook:Firecrawl 接受一个 URL 字符串,或者带 headers、metadata、events 的对象。 - Webhook
Settings - webhook 投递的设置(服务端配置,不来自请求)。
Enums§
Constants§
- JOB_TTL
- Task results retention period (24 hours).
- MAX_
CRAWL_ DEPTH - crawl 的
maxDiscoveryDepth/maxDepth上限。 - MAX_
CRAWL_ LIMIT - crawl 的
limit上限。 - MAX_
MAP_ LIMIT - map 的
limit上限,和 Firecrawl 文档一致。 - MAX_
SCRAPE_ TIMEOUT_ MS - 同步 scrape 的
timeout上限(毫秒);整请求超时按它留余量。 - MAX_
URLS - batch scrape、extract 一次最多带多少个 URL。
- MAX_
URL_ LEN - URL 最长 8 KB:再长的 URL 浏览器和多数服务器都不接受,只会白白占内存。
Traits§
Functions§
- check_
scrape_ options - check_
url - rfc3339
- UTC timestamp formatted into RFC 3339 (second precision with milliseconds).
- router
- Construct complete HTTP router with Firecrawl v1/v2, Jina Reader, and metrics.
- serve
- 用默认超时在
listener上提供服务,shutdown完成后优雅退出。 - serve_
with - 和
axum::serve(..).with_graceful_shutdown(..)行为相同,另外给 HTTP/1 设了请求头读取超时 (axum::serve 设不了):收到shutdown后停止 accept,通知每个连接优雅关闭,等它们都结束再返回。