使用 HTTP API 管理浏览器会话和标签页,无需 WebSocket 连接。这对于创建会话、列出标签页和清理资源等会话生命周期操作很有用。
开始之前,请创建自定义 API Token,并授予 Browser Rendering - Edit 权限。
API 参考 在 /devtools 下记录了所有会话管理端点。
使用 POST /devtools/browser 端点创建新的浏览器会话。会话将在指定的 keep-alive 时间内保持活动(此示例为 10 分钟)。
curl "https://api.cloudflare.com/client/v4/accounts/ACCOUNT_ID/browser-rendering/devtools/browser?keep_alive=600000" \
--request POST \
--header "Authorization: Bearer {api_token}"{
"sessionId": "1909cef7-23e8-4394-bc31-27404bf4348f",
"webSocketDebuggerUrl": "wss://api.cloudflare.com/client/v4/accounts/{account_id}/browser-rendering/devtools/browser/1909cef7-23e8-4394-bc31-27404bf4348f"
}保存响应中的 sessionId。你将在后续请求中使用它。
使用 PUT /devtools/browser/{session_id}/json/new 端点在浏览器会话中打开新标签页并导航到特定 URL。
curl "https://api.cloudflare.com/client/v4/accounts/ACCOUNT_ID/browser-rendering/devtools/browser/SESSION_ID/json/new?url=https%3A%2F%2Fexample.com" \
--request PUT \
--header "Authorization: Bearer {api_token}"{
"id": "8E598E996530FB09E46A22B8B7754F7F",
"type": "page",
"url": "https://example.com",
"title": "Example Domain",
"description": "",
"devtoolsFrontendUrl": "https://live.browser.run/ui/view?wss=live.browser.run/api/devtools/browser/1909cef7-23e8-4394-bc31-27404bf4348f/page/8E598E996530FB09E46A22B8B7754F7F?jwt=...",
"webSocketDebuggerUrl": "wss://live.browser.run/api/devtools/browser/1909cef7-23e8-4394-bc31-27404bf4348f/page/8E598E996530FB09E46A22B8B7754F7F?jwt=..."
}列出会话中的所有 target(标签页)以验证标签页已创建并获取 devtoolsFrontendUrl。
curl "https://api.cloudflare.com/client/v4/accounts/ACCOUNT_ID/browser-rendering/devtools/browser/SESSION_ID/json/list" \
--request GET \
--header "Authorization: Bearer {api_token}"[
{
"id": "8E598E996530FB09E46A22B8B7754F7F",
"type": "page",
"url": "https://example.com",
"title": "Example Domain",
"description": "",
"devtoolsFrontendUrl": "https://live.browser.run/ui/view?wss=live.browser.run/api/devtools/browser/1909cef7-23e8-4394-bc31-27404bf4348f/page/8E598E996530FB09E46A22B8B7754F7F?jwt=...",
"webSocketDebuggerUrl": "wss://live.browser.run/api/devtools/browser/1909cef7-23e8-4394-bc31-27404bf4348f/page/8E598E996530FB09E46A22B8B7754F7F?jwt=..."
}
]从响应中复制 devtoolsFrontendUrl 并在 Chrome 中打开。此 URL 提供连接到远程浏览器会话的 Chrome DevTools UI 的直接访问。
打开后,DevTools UI 将加载,你可以:
- 检查 DOM 和 CSS
- 使用断点调试 JavaScript
- 监控网络请求
- 查看控制台消息
- 在控制台中执行 JavaScript
- 导航到不同的 URL
完成后,关闭浏览器会话以释放资源。
curl "https://api.cloudflare.com/client/v4/accounts/ACCOUNT_ID/browser-rendering/devtools/browser/SESSION_ID" \
--request DELETE \
--header "Authorization: Bearer {api_token}"{
"status": "closing"
}如有疑问或遇到错误,请参阅 Browser Run 常见问题与故障排除指南。