亮点
即使我们的一台服务器离线,您的下一个 request 也会自动转到另一台。API、proxy 端口、MCP 服务器、登录和网站现在也都运行在备用服务器上,流量会自动切换。Rate limit 也不会因为轻微超限而直接惩罚:在配额内的 request 正常处理,仅拒绝超出部分。
最新更新
全方位备用服务器保障
如果主服务器停止响应,您的流量将自动切换到备用服务器,您无需进行任何配置更改。相同的密钥、相同的 host、相同的 proxy 用户。
发送到当前无法处理请求的服务器的 request,会被转发到可用的服务器,而不是直接返回错误。在此期间,剩余服务器上的调用速度不会受到任何影响。
Rate limit 仅限流,不封锁
在 Single 或 Proxy Finder 上如果略微超出套餐的每分钟配额,您仍可享受原有配额,仅超出部分会被拒绝,因为被拒绝的 request 不再计入当分钟用量。Retry-After 会提示下一次何时可通过。
重试过于频繁会触发暂停。一分钟内被拒绝的次数如果超过配额的两倍,系统将返回 30 秒的等待提示 cooldown: true。由于等待期间的拒绝不计入用量,即使您的客户端持续请求,等待期结束后也会自动恢复。新的 proxy 端口连接同样遵循该规则:未成功建立隧道的连接不计入您的每分钟用量。
import time
import requests
def single(url, key, tries=5):
for _ in range(tries):
r = requests.post(
"https://api.foura.ai/api/single",
headers={"X-API-Key": key},
json={"url": url},
)
if r.headers.get("X-FourA-Limit") != "plan_limit_rate":
return r
# same header on the 30-second pause; the body adds "cooldown": true
time.sleep(int(r.headers.get("Retry-After", "1")))
return r
每个字段均可在 rate limits 页面中找到。
Auto 在遇到完全拒绝访问的站点时会更快放弃
当某个目标站点拒绝 Auto 尝试的每个出口(包括 Browser)时,调用现在会在几次尝试后直接结束,而不会耗尽你的全部预算。对于 Proxy Finder 之前处理过的站点,Auto 首先会根据你自定义的 validate 规则向 Proxy Finder 请求该页面,若未命中结果则不会产生任何费用。
另外两项调整有助于确保 Auto 严格限制在你设定的配额内。当调用正在等待繁忙的 session,或等待另一个正在同一站点上运行的 request 时,现在会在你的 timeout_ms 限制内结束并返回 time budget exhausted 错误,以便你可以选择重试或提高预算(详情见 常见问题)。此外,无论通过哪条路由获取,JSON 页面都会在 data 中以文本格式返回,因此单个解析器即可处理所有调用。
这些优化均未改变 Auto 的核心定位。它负责探测可用路由;确定路由后,请在 /api/single 或 /api/browser 上复用其返回的 session,并将你的主要业务流量导向该处。
需要额外交互的页面
Browser 现在可以等待并处理另一类中间过渡页:即运行一段脚本后自动重载为真实内容的简短页面,并返回跳转后的最终页面。Auto 会在同一出口上将此类页面移交给 Browser,以确保调用最终返回站点的真实内容。
部分 Amazon 商品页面会先提示点击 "Continue shopping"。Single 和 Browser 现在会在同一出口上自动点击该按钮并返回商品页面。通过 Proxy Finder 和 Auto 发起的调用同样支持此特性。
Browser 还会跟随加载后自动重定向到其他地址的页面,而不是耗尽你的超时时间。你回传的名为 __Secure- 或 __Host- 的 cookie 现在会自动带上其前缀所需的属性,从而让页面能够完整识别你保存的 session。
Proxy Finder 与两项更明确的错误提示
通过 Proxy Finder 发起的纯 HTTP request 现在会先与目标站点建立直接连接,与 HTTPS 一直以来的处理方式保持一致。如果某个 proxy 返回了自定义拦截页面,或向无关站点返回完全相同的 body,系统会自动跳过该 proxy 并继续尝试下一个。
如果向 Single 或 Browser 传递包含无法解析的主机名的自定义 proxy URL,接口将返回 status 0 以及包含该主机名的错误信息,这与目标主机解析失败时的表现一致。直接指向 api.foura.ai 或 eu.api.foura.ai 本身的 request 会在发起抓取或计费前立即收到 400 错误。该错误通常提示了一个常见原因:链接是基于 API URL 而非原始页面 URL 进行解析拼接的。
控制台、注册与计费
- 在 foura.ai 上完成注册后,现已直接引导至 Dashboard。Overview 页面会指导你获取第一个结果:创建 API key,随后通过终端或 Playground 发送 request。在手机端,流程直接从 Playground 开始,proxy 端口也会提供围绕 proxy 用户的专属步骤。
- 在手机或较窄的窗口中,Playground 会在收到 response 时立即将其滚动到可视区域。
- 按 Domain 和按 Client IP 统计的使用量会在分页前对周期内的所有数据行进行排序,确保第一页展示真正的头部数据。
- Overview 卡片在加载期间即可跟随所选周期同步更新,周期选择弹窗会默认定位到当前查看的时间范围,且侧边栏的 Tools 下新增了 Docs 链接。
- 手动开具的发票现已在 Billing 页面与自动发票一并展示。包含欧盟增值税(EU VAT)的发票均采用交易当天的有效税率,包含预先公布的税率调整。
以上各项均在 updates.foura.ai 上有独立的记录。
Under the Hood
proxy 端口会实时统计打开的 tunnel 数量。因我们实例重启而终止的 tunnel 会在数秒内从中剔除。因此,你的方案所允许的并发量就是你实际能够获取的并发量。
最好的故障转移,是只在汇总摘要中才被提及的故障转移。