跳转到主要内容

1. 概述

如果你的产品需要秒级刷新的比分牌、滚动更新的滚球赔率盘口,或是逐帧播报的比赛事件流,轮询 REST 接口的延迟可能无法满足需求。WebSocket 通过服务端主动推送来解决这个问题,只需建立一次长连接,声明你关心的数据产品,之后所有更新都会自动送达,无需客户端反复发起请求。
握手成功后不会自动推送数据,需发送订阅消息并成功后才会收到推送。同一连接可同时订阅多种产品。

2. 可订阅的数据产品

一条连接上可以按需订阅下面 4 种数据产品中的任意组合,每种产品有独立的订阅/取消 code 与推送 type,互不影响:
握手成功后不会自动推送数据,需发送订阅消息并成功后才会收到推送。同一连接可同时订阅多种产品。
字段必填说明约定:

3. 建立连接

3.1 握手 URL

过滤条件(league_id / country_id / match_id)请放在订阅消息的 data 中,不要写在 URL 上。

3.2 握手成功响应

握手成功响应示例
此时连接已建立,但尚未开始推送业务数据。 握手可能被拒绝(HTTP 层),例如:
  • 401 / 403:API Key 无效
  • 429:连接数超限,或账号被临时限制

4. 典型接入路径

1

建立连接

携带 API Key 完成 WebSocket 握手,收到 type: connected 表示连接已就绪。
2

发送订阅请求

针对你需要的数据产品发送对应的订阅 code,收到订阅成功应答后即开始接收推送。
3

维持心跳

每 30 秒发送一次心跳,避免因超时被服务端断开连接。
4

处理推送并做好断线重连

持续接收推送消息;连接意外断开时按指数退避策略重连,并重新发送订阅(订阅状态不会跨连接保留)。