安装
构建客户端
以下示例启用全部选项:构建器方法
.url(url) - 发送请求的主端点。若未设置,SDK 会读取环境变量 ORBITFLARE_RPC_URL。
.urls([...]) - 一次设置主端点与所有备用端点。第一个元素为主端点,其余为备用。
.fallbackUrl(url) - 添加单个备用端点。可多次调用以添加多个。主端点失败时,SDK 按顺序尝试备用端点。
.fallbackUrls([...]) - 与 fallbackUrl 相同,但接受数组。
.apiKey(key) - OrbitFlare 许可证密钥。若未设置,SDK 从环境读取 ORBITFLARE_LICENSE_KEY。密钥在请求时注入 URL,不会存储在端点字符串中。
.commitment(level) - 所有类型化辅助方法的默认承诺级别。可选:'processed'、'confirmed'、'finalized'。默认为 'confirmed'。
.retry(policy) - 控制失败请求的重试策略。initialDelayMs 为首次重试前等待时间。multiplier 为每次尝试的延迟倍数。maxDelayMs 为退避上限。maxAttempts 限制每个端点的总重试次数(0 表示无限)。默认:初始 100ms、最大 30s、2 倍乘数、无限次尝试。
.timeoutMs(ms) - 单次 HTTP 请求超时。默认 30 秒。
可用 RPC 方法
getSlot()
返回当前槽位号。
getBalance(address)
返回账户余额(lamports)。
getAccountInfo(address)
返回完整账户数据;若账户不存在则返回 null。数据为 base64 编码。
getMultipleAccounts(addresses)
一次调用获取多个账户。自动按每批 100 个地址分块(Solana 单次请求限制),因此可传入任意数量地址。
getLatestBlockhash()
返回最新区块哈希及其有效截止的最后区块高度。
getTransaction(signature)
按签名拉取已确认交易。返回含元数据的完整交易。
getSignaturesForAddress(address, limit)
返回某地址的最近交易签名,按时间从新到旧。
getProgramAccounts(programId)
返回某程序拥有的全部账户。可能返回大量数据。
getRecentPrioritizationFees(addresses)
返回一组账户的近期优先费用样本。可用于估算计算单元定价。
sendTransaction(txBase64)
向网络提交已签名交易。参数为 base64 序列化交易。返回交易签名。
simulateTransaction(txBase64)
模拟交易而不提交。返回日志、消耗的计算单元及任何错误。
getTokenAccountsByOwner(owner, mint?, programId?)
返回钱包的代币账户。可传入特定 mint 或代币程序 ID。若两者均省略,默认使用 SPL Token 程序。
getTransactionsForAddress(address, options)
OrbitFlare 特有方法:将 getSignaturesForAddress 与 getTransaction 合并为一次调用。返回 GetTransactionsResult,包含 data 数组及用于下一页的可选 paginationToken。
支持四种详情级别(signatures、none、accounts、full)、双向排序、时间/槽位过滤、状态过滤及代币账户包含选项。
request(method, params)
按名称调用任意 RPC 方法。SDK 构建 JSON-RPC 信封,处理重试与故障转移,并返回 result 字段。