了解 getBlockCommitment 的使用案例、代码示例、请求参数、响应结构和提示。
getBlockCommitment
RPC 方法提供有关 Solana 分类账中特定区块的承诺状态的信息。这对于了解一个区块的最终确定程度很有用,基于已对其投票的权益。
totalStake
提供了在区块处理时集群中总活跃权益的洞察。confirmed
, finalized
)的区块最终性提供非常具体保证的应用程序。slot
(number, required): 要查询承诺信息的区块的槽号 (u64)。result
字段将是一个包含以下内容的对象:
commitment
(array of u64 integers | null):
MAX_LOCKOUT_HISTORY
,即 31)。i
显示对区块投票的权益,考虑到对区块本身及其后代的投票,深度可达 i
。null
。totalStake
(number):
commitment
数组:
commitment
数组显示了在不同确认深度下为区块投票的权益(以lamports为单位)。在更深的索引处的较高值表示更强的最终性。null
commitment
数组通常意味着节点没有该槽位的数据,可能是因为它太旧或被跳过。commitment[i] / totalStake >= 2/3
(超级多数),你可以在深度i
评估最终性。getBlockCommitment
用于细致的最终性分析。对于大多数常见场景,依赖于标准承诺级别(processed
, confirmed
, 或 finalized
)与其他RPC方法(如getTransaction
或getBlock
)更简单且足够。getBlockCommitment
,对Solana的承诺级别有一个扎实的理解是必不可少的。参见Solana承诺级别获取详细信息。null
结果。250000000
)是一个占位符。当你运行示例时,应将其替换为你知道存在于目标网络(例如,Devnet或Mainnet)上的最近确认的槽位。你可以使用Solana区块浏览器找到最近的槽位号。
注意: 在下面的示例中,将YOUR_API_KEY
替换为你的实际Helius API密钥。