Playground
Playground(侧边栏 > Playground)允许您在不编写任何代码的情况下,使用真实的密钥运行实时 API request。这是测试新目标网站、调试复杂 response 或横向对比 Single、Proxy 和 Browser 的最快方式。
请在 foura.ai/dashboard#playground 打开它。
功能介绍
一个表单。三个引擎。真实流量。
- Single:具有逼真浏览器特征的直接 HTTP 获取
- Proxy:托管式轮换 proxy 获取
- Browser:在 Chrome 浏览器实例中打开 URL,用于 JS 渲染的网站
Request 将使用您在页面顶部选择的 API key 运行。使用量将以与生产环境调用相同的方式计入该 key 的额度,因此请勿在测试中耗尽您的套餐额度。
选择 Key
API key 下拉菜单会显示您范围内的所有活动 key:个人 key、您管理的组织 key 以及您可以访问的团队共享 key。选择您希望扣除 request 额度的 key。如果您还没有任何活动 key,行内提示会链接到 API Keys 页面以创建 key。
选择产品
表单上方有三个选项卡:Single、Proxy、Browser。切换选项卡会改变可见字段以及 request 请求的引擎。重新加载页面时会保留当前选择。
| Product | 使用场景 |
|---|---|
| Single | 快速 HTTP 获取。任何 URL 的首选。 |
| Proxy | 带有自动 proxy 轮换的相同获取方式。在 Single 持续被拦截时使用。 |
| Browser | 在 Chrome 浏览器实例中加载页面。在数据仅在 JavaScript 运行后才出现时使用。 |
构建 Request
URL 行
顶部行包含 HTTP 方法(GET、POST、PUT、PATCH、DELETE、HEAD、OPTIONS)、目标 URL 和 Send 按钮。Single + Proxy 支持所有方法。Browser 会忽略该方法(Chrome 在导航时始终发送 GET)和 body。
Request 标签页
在 URL 行下方,有五个标签页可供您填写其他所有内容:
| Tab | 控制内容 |
|---|---|
| UI | 用于超时、重定向、标志、proxy、浏览器特定选项和验证规则的表单字段 |
| Body | 用于 POST / PUT / PATCH request 的自定义 body |
| Headers | 键值对形式的自定义 request header |
| Cookies | 随 request 发送的 cookie |
| Raw | 将要发送的精确 JSON 负载,可直接编辑 |
您在 UI / Body / Headers / Cookies 中所做的任何更改都会反映在 Raw 中。编辑 Raw 同样有效,其他标签页会同步更新。
UI 面板区域
UI 标签页将设置分组到可折叠的区域中。空白字段将回退到引擎的 schema 默认值。
- Timeouts:
timeout_ms、connect_timeout_ms、accept_timeout_ms、server_response_timeout_ms、dns_cache_timeout_sec - Redirects:切换并设置
followRedirects(0-20)。仅限 Single + Proxy。Browser 会自行处理重定向。 - Flags:
unblocker、tryJsonData、returnBuffer。适用于 Single + Proxy。 - Proxy:为 Single 或 Browser 选择特定的 proxy ID,或者为 Proxy 引擎设置
maxTries、Proxy 外部超时和ignoreProxies。 - Browser:仅限浏览器的选项,例如
checkStatus和checkText。 - Validate:
validate.status(状态码)、validate.headers(header 键值规则)和validate.data(body 接受/失败子字符串,以|分隔的备选项)接受/失败规则。
不适用于当前所选产品的字段将被隐藏。
工具栏重置
工具栏上的 Reset 按钮(位于 History 旁边)可将当前活动产品的表单恢复为默认值。默认设置会保持 unblocker 和 tryJsonData 开启,这符合最常见的初始配置。当您偏离了可用的基准配置且不想重新加载页面以获取干净的状态时,请使用此按钮。
发送与取消
点击 Send 发送 request。在调用进行期间,右侧列会切换到加载状态,显示加载动画和 Cancel 按钮。点击 Cancel(或在移动端再次点击该按钮)可中止操作。取消的 request 会将空闲占位符恢复为 "Request canceled.",而不是渲染错误。
在 request 完成(或失败)的瞬间,response 卡片会切换到结果。
查看 Response
response 列镜像了 request 的布局,并拥有自己的标签页:
| Tab | 显示内容 |
|---|---|
| Body | 解析后的 body。根据返回内容在 JSON、HTML 和 Text 视图之间切换。 |
| Headers | Response header,每行一个。 |
| Cookies | 目标返回的 cookie,提供解析后(按主机分组)和原始(Set-Cookie 文本)两种视图。解析后的视图在仅限主机的 cookie 上显示 HO 徽章;网域 cookie 未标记。 |
| Raw | API 返回的完整 JSON 信封。 |
标签页上方的元数据条显示上游 HTTP 状态、总耗时以及(对于 Proxy / 带有 proxy ID 的 single request)处理该调用的 proxy ID。每个面板的右上角都有复制和下载按钮,因此您可以一键将 body 或 header 保存到文件中。
展开至全屏
response 工具栏上的展开图标可将 response 卡片从分栏布局中弹出,进入全屏覆盖层。适用于深层 JSON 树、长 Set-Cookie 转储或宽 HTML body 等半宽列显得拥挤的情况。覆盖层打开时,页面本身会停止滚动。再次点击该图标(或按 Escape 键)可折叠。
curl 重现器
在 response 下方,一个 curl 代码块显示了与您刚刚构建的 request 完全等效的命令行。复制它以便从终端重现该 request、与团队成员共享或将其粘贴到错误报告中。
对于可显示的 key,代码片段旁边的 Reveal key 按钮会将真实的明文 key 直接放入 curl 中,以便您可以直接复制并运行。再次点击可隐藏。遗留 key(在显示功能发布之前创建)保留 PASTE_PLAINTEXT_FOR_<key-name> 占位符;请从 API Keys 页面重新生成 key 以使其可显示。
每次显示都会在服务器上进行审计日志记录,并且明文 key 仅在当前页面会话的内存中保留。
保存预设
如果您发现自己需要反复重新配置相同的目标,请将其保存。点击 request 标签页行上的 Save,将当前配置保存为命名预设。
打开工具栏中的 Saved 以浏览、重命名或删除您的预设。点击任何预设可将其重新加载到表单中。
| 预设字段 | 存储内容 |
|---|---|
| Name | 简短标签(最多 100 个字符) |
| Description | 可选备注(最多 500 个字符) |
| Endpoint | 预设适用的产品(single / proxy / browser) |
| Config | 完整的 request 负载,包括 UI 字段、header、cookie 和 body |
预设的作用域限定在您的用户帐户,不会与团队成员共享。
从历史记录重放
您运行的每个 request 都会被记录。打开工具栏中的 History 以查看您最近的 20 次运行,按最新时间排序。
每行显示 endpoint、目标 URL、状态和时间。点击任何行上的 Replay 将该 request 重新加载到表单中,然后点击 Send 再次运行。
历史记录会自动限定在您的帐户范围内:您只能看到自己的运行记录。
从活动日志打开
Activity Log 详情对话框中有一个 Open in Playground 按钮。点击它,Playground 将同时加载已归档的 request 和已归档的 response。表单将根据存储的负载自动填充,并且 response 卡片会显示 API 在那一刻返回的内容,并在 proxy 元数据条上显示 "archived" 徽章("archived
在那里,您可以更改参数并点击 Send 以针对实时 API 运行新 request,或者仅检查已归档的负载而不重新运行它。负载将保留 24 小时,因此较早的 Activity 行将没有可重新加载的 response。
提示
- 在针对新目标编写代码之前,先在 Playground 中开始。您将在几秒钟内知道 Single 是否足够,或者您是否需要 Browser。
- 为您定期抓取的每个目标保存一个预设。重放保存的预设只需一键;而凭记忆重新构建 request 需要更长时间。
- 使用 Cookies 标签页来调试基于会话的抓取。原始的 Set-Cookie 视图会准确显示目标发送的内容。
- Playground request 将计入您选择的 key。如果您想保持生产环境使用量的整洁,请使用专用的低额度 key 进行日常探索。
相关内容
- API Endpoints:所有三种产品的完整参数参考
- Choosing the Right Endpoint:何时选择 Single、Proxy 或 Browser
- API Keys:管理您用于验证 Playground request 的 key
- Activity Log:直接在 Playground 中打开过去的 request
- Dashboard Overview:所有侧边栏区域