选择合适的 Endpoint

FourA 提供四个 request endpoint,每个均针对不同场景进行了优化。选择正确的 endpoint 可节省时间,降低成本,并提高成功率。

快速决策指南

在以下情况下使用 auto endpoint:

  • 目标是一个新网站,且您尚未清楚其需求
  • 您希望通过一次调用来为您处理直接请求、proxy 轮换和 browser 回退
  • 您需要一个 session,以便在下次调用同一主机时以低成本重放

在以下情况下使用 single endpoint:

  • 页面是服务端渲染的 (不需要 JavaScript)
  • 您需要最快的速度 (通常在 1 秒以内)
  • 您正在请求已知可用的主机上的 API 或静态 HTML 页面

在以下情况下使用 browser endpoint:

  • 页面依赖 JavaScript 渲染内容
  • 内容在初始页面加载后加载
  • 您需要完全渲染的 DOM

在以下情况下使用 proxy endpoint:

  • 目标网站主动拦截 request
  • 您需要轮换多个 IP 地址
  • 之前的尝试返回了 403 或 CAPTCHA 页面

Endpoint 比较

Auto (POST /api/auto/)

智能获取 (smart-fetch) endpoint。您传递一个 URL 和 (最好) 一个 validate 规则,FourA 会遍历一个具有成本意识的阶梯:廉价的直接探测、轮换 proxy、完整的 browser。第一个返回匹配 validate 的 response 的层级获胜。在对同一主机重复调用时,会重放预热过的 session,因此第二次调用的成本很低。

curl -X POST https://eu.api.foura.ai/api/auto/ \
  -H "X-API-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://example.com/product/42",
    "validate": {"data": {"accept": ["Add to cart"]}}
  }'

典型 response 时间: 200ms (热) 到 30s+ (在困难网站上的冷解决) 最适合: 新目标、混合保护网站、“我只需要页面”

有关更深入的演练,请参阅 Smart Fetch 指南

Single (POST /api/single/)

最快的选项。发送具有逼真类似 browser 传输特征的 HTTP request,而无需启动 browser 进程。

curl -X POST https://eu.api.foura.ai/api/single/ \
  -H "X-API-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"method": "GET", "url": "https://example.com/api/products"}'

典型 response 时间: 200ms 到 2s 最适合: API、新闻网站、博客、静态产品页面

Browser (POST /api/browser/)

在 Chrome browser 实例中打开您的 URL。页面完全加载,JavaScript 执行,您将获得最终渲染的 HTML。

curl -X POST https://eu.api.foura.ai/api/browser/ \
  -H "X-API-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://example.com/spa-app",
    "timeout_ms": 15000,
    "checkText": "data-table"
  }'

典型 response 时间: 2s 到 10s 最适合: 单页应用 (SPA)、具有延迟加载的网站、JavaScript 渲染内容

Proxy (POST /api/proxy/)

结合 HTTP request 和自动 proxy 轮换。如果首次尝试失败或被拦截,FourA 会通过不同的 proxy 进行重试。

curl -X POST https://eu.api.foura.ai/api/proxy/ \
  -H "X-API-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "maxTries": 5,
    "request": {
      "method": "GET",
      "url": "https://example.com/pricing"
    }
  }'

典型 response 时间: 1s 到 5s 最适合: 电子商务价格监控、旅游信息聚合、具有机器人检测的网站

Auto 对比手动

何时应该让 auto 进行选择,何时应该自行调用 Single、Proxy 或 Browser?

选择 auto 选择手动
您尚不知道网站需要什么 您确切知道目标需要哪种引擎
您希望一次调用就能正常工作 您正在为已知目标优化 request 形式
您可以接受 auto 重用其学习到的 session 您希望完全控制每次调用的重试、超时和 proxy 选择
您愿意为首次调用支付几秒钟的探测成本 首次调用的延迟比发现更重要

Auto 并不总是更便宜的选择。如果您已经知道目标在开启 Single 和 unblocker 时有效,那么直接调用 Single 可跳过探测并花费 2 个 credit。在同一目标上使用 auto 的成本取决于其阶梯所花费的资源。

何时组合这些方法

部分工作流得益于使用多个 endpoint:

  1. **使用 auto 发现:**传递 validate 规则,让阶梯找出网站需要的层级。
  2. **使用 single 重放:**获取 auto 返回的 session.proxysession.cookiessession.userAgent,然后使用它们调用 Single 以获取同一主机上的后续页面。
  3. **回退到 browser:**如果 single 开始失败,请切换到 browser 渲染。
  4. **添加 proxy:**如果在没有 auto 的情况下被拦截 (403 / CAPTCHA),请将 request 包装在 proxy endpoint 中以进行自动轮换。

这种渐进式方法既能保持低成本,又能保持高成功率。

性能提示

  • 在受保护的目标上传递 validate.data.accept 子字符串。如果没有它,auto 无法区分真实页面和质询插页。
  • 默认情况下对已知正常工作的主机使用 single endpoint,并仅在需要时进行升级。
  • 在 browser request 中设置 checkText,以避免等待不必要的内容。
  • 在 proxy request 中设置 maxTries 以控制重试行为 (默认值为 5,最大值为 90)。
  • 保持 timeout_ms 合理:大多数页面为 10 到 15 秒,针对受保护网站的冷 auto 运行为 30s+。

后续步骤

更新于: 2026年6月30日