用途:iii-browser-sdk 是面向浏览器的 SDK,用于把 Web 应用通过 WebSocket 连接到 iii 引擎,适合构建浏览器端客户端,在页面中注册函数、绑定触发器并调用引擎侧函数。完整 API 参考见 https://iii.dev/docs/api-reference/sdk-browser。
主要能力:registerWorker(address, options?) 通过 WebSocket 连接引擎;registerFunction(id, handler) 注册浏览器侧函数处理器;registerTrigger({ type, function_id, config, metadata? }) 将触发器绑定到函数;trigger({ function_id, payload, action? }) 调用函数;TriggerAction.Void() 为即发即忘模式;TriggerAction.Enqueue({ queue }) 为持久化异步调用模式;registerTriggerType({ id, description }, { registerTrigger, unregisterTrigger }) 注册自定义触发器类型;createChannel() 用于 worker 之间的二进制流传输。
使用方式:安装 npm install iii-browser-sdk。连接示例:registerWorker('ws://localhost:49135'),生产环境可用 wss://host:49135 启用 TLS。注册函数后可用 iii.trigger({ function_id, payload }) 调用服务端函数,或用 TriggerAction.Void() 做即发即忘调用。实时更新可连接 ws://host:3112/stream/{name}/{group}。
与 Node SDK 的差异:不使用自定义 WebSocket 头,改用查询参数传递认证令牌;不导出 Logger,需使用浏览器控制台或自有日志;不上报 worker 元数据遥测;直接通过 ws:// 或 wss:// URL 连接,没有 registerWorker 的 URL 选项;函数、触发器、通道 API 与 Node SDK 一致。
适用场景与限制:客户端为 Web 浏览器时使用本 SDK;服务端 Node.js worker 应使用 iii-node-sdk,Python 或 Rust worker 分别使用 iii-python-sdk 或 iii-rust-sdk,实时流消费可参考 iii-realtime-streams。不应将其作为无关任务的通用替代方案,也不应在更具体的 iii 技能更合适时使用;应用示例前需先确认环境与安全约束。资料未提供收费、价格与平台支持等更多信息。