Websocket Endpoint
Websocket Endpoint 是用来创建和启动Websocket接收服务,它可以注册不同的路由Router 来处理不同的请求。
# Type
endpoint/ws
# 启动配置
该组件允许通关过server字段复用共享的连接客户端。参考组件连接复用 。
| 字段 | 类型 | 是否必填 | 说明 | 默认值 |
|---|---|---|---|---|
| server | string | 是 | ws服务地址,例如:":8080" | - |
| certFile | string | 否 | Cert文件路径 | 0 |
| certKeyFile | string | 否 | CertKey文件路径 | - |
| sessionKey | string | 否 | 会话寻址 Key 提取规则(rulego ${} 表达式)。如 ${msg.deviceId} 从首帧提取设备ID;留空用 RemoteAddr | - |
| sessionTTL | int | 否 | 会话空闲 TTL(秒)。空闲超时则关闭连接;<=0 使用默认 1800 | 1800 |
# 会话寻址与主动推送
endpoint/ws 内置会话注册表,为每个接入的 WebSocket 客户端维护一个会话。配合 ws 节点(server=ref://<本 endpoint 实例ID>),可复用客户端已建立的 WS 连接,按 sessionKey(如 deviceId)精确寻址主动向特定客户端推送消息。
sessionKey 配置与 endpoint/net 一致:用 rulego ${} 表达式从客户端上报的首帧提取会话 Key(如 ${msg.deviceId}),首次提取成功后固定;留空则用 RemoteAddr。详见 endpoint/net - 会话寻址与主动推送。
推送侧使用 ws 节点 ref:// 寻址,详见 ws 组件。
# 示例
以下是使用endpoint的示例代码:
在 GitHub 上编辑此页 (opens new window)
上次更新: 2026/07/29, 07:07:39