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