紫鸟浏览器支持四种API集成方式:一、启用Selenium API通信模式,通过指定端口和capabilities控制环境;二、Socket直连主进程获取/调度环境列表;三、调用本地HTTP RESTful接口管理设备与IP;四、通过OAuth2.0对接紫鸟卫士生态中心实现单点登录与权限同步。

如果您希望将紫鸟浏览器与外部系统集成,实现自动化店铺操作、环境批量管理或数据联动,则需通过其提供的API接口完成通信。以下是接入紫鸟浏览器API的具体方法:
一、启用Selenium API通信模式
紫鸟超级浏览器内核支持Selenium WebDriver协议,可通过标准HTTP请求与浏览器实例建立会话,适用于脚本化控制单个或多个店铺环境。
1、确保紫鸟浏览器主程序已启动且处于“开发者模式”或“API服务开启”状态;
2、在紫鸟浏览器设置中找到【高级设置】→【API服务】,勾选“启用Selenium API服务”,并记录显示的本地监听端口(默认为 56789);
3、使用Python等语言调用Selenium,指定ChromeDriver兼容地址为 http://127.0.0.1:56789,而非常规chromedriver路径;
4、初始化WebDriver对象时传入紫鸟专属capabilities参数,例如 {"browserName": "znbrowser", "znbrowserProfile": "shop_001"},以绑定指定环境卡片;
5、执行页面操作后,调用 driver.quit() 可安全释放该卡片资源,避免环境残留。
二、通过Socket直连主进程获取环境列表
该方式绕过WebDriver层,直接与紫鸟浏览器主进程建立TCP Socket连接,适用于需要实时同步店铺状态、动态创建/销毁环境的后台管理系统。
1、确认紫鸟浏览器进程正在运行,并在【设置】→【开发者选项】中开启“Socket API服务”;
2、使用任意Socket客户端向 127.0.0.1:60001 发起TCP连接(端口号以实际设置为准);
3、发送JSON格式指令,如 {"cmd": "get_profiles", "params": {}},获取全部已配置环境卡片信息;
4、接收返回的JSON响应,解析其中 "profile_id" 和 "status" 字段用于后续调度;
5、如需启动某环境,发送指令 {"cmd": "launch_profile", "params": {"profile_id": "p_abc123"}},主进程将返回对应WebSocket调试地址。
三、调用紫鸟内置HTTP RESTful接口管理设备与IP
紫鸟浏览器管理系统提供一组本地HTTP接口,用于添加自有设备、绑定代理IP、查询环境健康状态,适合与CMDB或运维平台对接。
1、访问 http://127.0.0.1:60002/api/v1/devices(需确保紫鸟管理服务已启动);
2、使用POST方法提交设备信息JSON,Header中必须包含 X-ZN-Auth: your_api_token(token在【账户中心】→【API密钥】中生成);
3、设备导入字段示例: {"device_type": "vps", "ip": "203.0.113.45", "port": 8080, "auth": {"user": "admin", "pass": "xxx"}};
4、成功响应返回 {"code": 0, "data": {"device_id": "d_vps_789"}};
5、后续可通过 GET /api/v1/devices/d_vps_789/status 实时轮询设备在线状态。
四、集成紫鸟卫士生态中心授权体系
若需将第三方系统用户身份与紫鸟浏览器权限体系打通,可借助紫鸟卫士开放的OAuth2.0授权流程,实现单点登录与角色同步。
1、在紫鸟浏览器中进入【生态中心】→【开放平台】→【创建应用】,填写回调域名并获取 client_id 与 client_secret;
2、引导用户访问 https://auth.zinbrow.com/oauth/authorize?client_id=xxx&response_type=code&redirect_uri=https%3A%2F%2Fyourdomain.com%2Fcallback;
3、接收回调中的 code 参数,向 https://auth.zinbrow.com/oauth/token 发起POST请求换取access_token;
4、使用该token调用 https://api.zinbrow.com/v1/user/profile 获取用户在紫鸟体系内的角色ID与绑定店铺列表;
5、将返回的 role_id 映射至本地RBAC模型,完成权限自动同步。










