Beam Bench文档

使用HTTP API

从任意HTTP客户端驱动Beam Bench。提供与CLI相同的操作,便于集成。

Beam Bench的HTTP/WebSocket API与CLI使用的是同一套接口。如果你的应用场景需要在非CLI环境中使用Beam Bench(Web应用、集成服务器、移动应用),请直接使用HTTP API。

所需条件

  • 已安装Beam Bench。
  • 编辑→设置→常规中启用本地API。默认情况下处于关闭状态。
  • HTTP客户端(curl、你所用语言的HTTP库、Postman等)。

验证API是否已启用

当前版本的默认设置经过有意限制:

  • 本地API:关闭。
  • API端口:5900。
  • 允许网络设备连接:关闭。保持关闭时,服务器只接受来自本机的连接。

打开桌面应用,进入编辑→设置→常规,然后启用本地API。对于在同一台计算机上运行的脚本,请保持允许网络设备连接关闭。设置会立即生效。

在共享Wi-Fi上绑定到网络之前,请阅读HTTP API页面。API没有身份验证功能,并且可以移动机器和触发激光器。

基础URL

http://localhost:5900/api/v1

(当允许网络设备连接开启时,也可以使用机器的局域网IP代替localhost。)

步骤

1. 验证API已启动

curl -s http://localhost:5900/api/v1/agent/capabilities | jq .

返回能力模式。(如果更改了端口,请将5900替换为配置的端口。)

2. 检查状态

curl -s http://localhost:5900/api/v1/agent/state | jq .

3. 打开项目

curl -s -X POST http://localhost:5900/api/v1/projects/open \
  -H 'Content-Type: application/json' \
  -d '{"path":"/abs/path/to/file.lzrproj"}'

4. 渲染设计(无头模式)

curl -s -X POST http://localhost:5900/api/v1/design/render \
  -H 'Content-Type: application/json' \
  -d '{"format":"png","pixels_per_mm":4,"output_path":"/tmp/out.png"}'

5. 获取相机状态

curl -s http://localhost:5900/api/v1/camera/state | jq .

6. 渲染相机叠加层(需要应用运行)

curl -s -X POST http://localhost:5900/api/v1/camera/overlay/render \
  -H 'Content-Type: application/json' \
  -d '{"output_path":"/tmp/overlay.png","view":"fit","keep":true}'

可用的端点组

完整接口请参阅API参考部分(内容填充后提供)。主要分组包括:

  • /agent:能力、状态、引导。
  • /camera:设备、状态、捕获、叠加层(显示、变换、渲染)、校准、对齐。
  • /design:描述、渲染、事务。
  • /projects:打开、保存、关闭、图层、对象、撤销/重做、导入。
  • /export:svg、dxf、pdf、eps、ai。

安全性

API服务器没有身份验证功能,默认信任其所在的网络。

  • 仅绑定localhost可将暴露范围限制在本机。
  • 网络绑定需要单独选择启用,启用后API会对同一局域网中的任何人开放。仅在受信任的网络上启用。

验证是否成功

  • curl agent/capabilities返回JSON。
  • 渲染调用会生成请求的文档。

相关内容

On this page