跳转到主要内容

概述

OrbitFlare 支持持久 WebSocket 连接,用于接收实时 Solana 数据。WebSocket 订阅在链上发生变化时主动推送更新到您的客户端——无需轮询。 WebSocket 端点使用 wss:// 协议,区域代码与 HTTP API 相同:
自动路由的主网端点:
您的许可证密钥可在 OrbitFlare Dashboard许可证部分找到。将其作为 api_key 查询参数传入——与 HTTP RPC 使用的密钥相同。

连接

超过 60 秒没有任何消息交换的 WebSocket 连接将被服务器关闭。请发送 ping 或保持订阅活跃以维持连接。

订阅方法

accountSubscribe

当特定账户的 lamport 余额或数据发生变化时接收更新。
更新字段:

logsSubscribe

实时接收交易日志消息。可选择过滤到特定程序。
更新字段:

slotSubscribe

每次处理一个槽时接收通知。
更新字段:

signatureSubscribe

当特定交易签名达到指定确认级别时,接收一次性通知。
发送第一条通知后,订阅自动关闭。

programSubscribe

接收特定程序所拥有的所有账户的更新。

blockSubscribe

每个区块被确认时接收完整区块数据。需要附加功能——请联系支持团队开启。

rootSubscribe

每次最高已确认根槽推进时接收通知。

voteSubscribe

接收在 gossip 网络中观察到的原始投票交易。数据量大——请谨慎过滤。

取消订阅

每种订阅方法都有对应的 Unsubscribe 方法。传入初始订阅响应中返回的订阅 ID。
可用的取消订阅方法:accountUnsubscribelogsUnsubscribeslotUnsubscribesignatureUnsubscribeprogramUnsubscribeblockUnsubscriberootUnsubscribevoteUnsubscribe

保持连接活跃

WebSocket 连接在闲置 60 秒后将被关闭。定期发送 JSON-RPC ping 以保持连接:

重新连接

在生产应用中实现带指数退避的自动重连:

连接限制

WebSocket 连接与 gRPC 连接共享相同的每 IP 限制。详情请参阅认证与限制

另请参阅

HTTP RPC API

JSON-RPC 2.0 请求格式、批量请求及所有可用方法。

错误码

HTTP 状态码、JSON-RPC 错误及处理方式。