跳转到内容

订阅 WebSocket Topic

订阅 topic 后,Gateway 会在同一个 WebSocket 连接里推送消息。一个连接可以订阅多类数据,但程序必须自己维护订阅状态。

状态用途
已订阅 conid避免重复订阅同一个行情。
已订阅 topic 类型重连后恢复订阅。
最后消息时间判断推送是否停滞。
取消中的 topic避免取消后又重新订阅。
WebSocket 已连接
-> 发送 ech+hb
-> 发送 smd+265598+{"fields":["31"]}
-> 收到行情消息
-> 记录订阅状态
umd+265598+{}

取消订阅后,本地也要删除对应状态。否则重连恢复时可能又把它订回去。

场景建议
网络短断重新连接后发送心跳,再恢复订阅。
Gateway 会话过期不要盲目重连,先让用户重新登录。
权限错误不重复订阅同一无权限 topic,展示错误说明。
消息格式变化保留原始消息,解析失败时不中断整个连接。

订阅越多,对行情权限和 Gateway 负载要求越高。新手先用一两个 conid 跑通链路,再扩大范围。