az-aio-client
AIO Desktop 后端 HTTP 客户端,提供对 Shell 组件注册表和桌面状态 API 的同步调用封装。
功能
- 类型安全的 AIO Desktop REST API 客户端,基于
reqwest::blocking - 可选的桌面会话令牌认证(
x-aio-desktop-tokenheader) - 完整的 Shell 组件管理接口:列表、获取、插入/更新(upsert)、局部修补(patch)、移除、配置保存、构建
- 桌面后端状态查询(
/api/desktop/status) - 统一的
AioClientError错误类型,区分传输层错误与 HTTP 状态错误
安装
在 Cargo.toml 中添加:
[]
= { = "../az-aio-client" } # workspace 内部引用
# 或发布后:
# az-aio-client = "0.1" # crates.io 引用
用法
use AioClient;
// 创建客户端(无需认证令牌)
let client = new;
// 或携带桌面会话令牌
let client = with_desktop_token;
// 查询桌面后端状态
let status = client.desktop_status?;
println!;
// 列出所有 Shell 组件
let registry = client.list_shell_components?;
println!;
// 获取单个组件
if let Some = client.get_shell_component?
依赖的 crates
az-config-center-contract— Shell 组件的共享数据类型reqwest— HTTP 客户端(阻塞模式)serde/serde_json— JSON 序列化与反序列化thiserror— 错误类型派生urlencoding— URL 路径编码(组件名称可能含特殊字符)