getSlotLeader RPC方法返回当前块生产的领导验证者的公钥,基于节点在指定承诺级别的视图。领导者负责为当前槽位生成块。
常见用例
- 识别当前区块生产者: 找出当前计划生成区块的验证者。
- 网络监控: 观察槽位领导者的轮换。
- 调试交易问题: 在某些高级场景中,如果交易直接提交给领导者,了解当前槽位领导者可能相关(尽管这不是常见的客户端实践)。
请求参数
此方法将一个可选的配置对象作为其第一个参数:options(object, 可选): 一个可选的配置对象,包含以下字段:commitment(string, 可选): 指定查询的承诺级别。支持的值有finalized、confirmed或processed。如果省略,则使用RPC节点的默认承诺(通常是finalized)。槽位领导者是基于与该承诺级别匹配的槽位确定的。minContextSlot(number, 可选): 请求可评估的最小槽位。这设置了节点上下文的最小槽位。
响应结构
JSON-RPC响应的result字段是一个base-58编码的字符串,代表当前槽位领导者的公钥(身份)。
示例响应:
示例
1. 获取当前槽位领导者(默认承诺)
此示例使用节点的默认承诺级别(通常是finalized)获取当前槽位领导者。
2. 使用confirmed承诺获取当前槽位领导者
此示例获取已达到confirmed承诺的最新槽位的领导者。
开发者提示
- 动态特性: 槽位领导者经常更换(通常每4个槽位)。该调用的结果是基于节点当前视图和选择的承诺的时间快照。
- 承诺级别: 承诺级别影响为确定领导者而认为“当前”的槽位。使用
processed将为您提供节点已知的最新槽位的领导者,这可能会迅速变化,并且可能尚未被更广泛的网络确认。 - 领导者计划: 槽位领导者的顺序由领导者计划决定,该计划在每个纪元开始时计算。我们关于槽位、块和纪元的指南提供了更多关于此过程的详细信息。要获得即将到来的领导者的更全面视图,请使用
getLeaderSchedule。 - 节点的视角: 返回的槽位领导者基于您查询的特定RPC节点可用的信息。由于网络延迟,不同的节点可能会有略微不同的视图。
getSlotLeader提供了一种快速识别当前负责生产区块的验证者的方法。要查看领导轮换的更广泛视图,请考虑getLeaderSchedule。