getBlocksWithLimit te permite recuperar una lista de números de slot de bloques confirmados, comenzando desde un slot específico y devolviendo hasta un límite determinado. Esto resulta útil cuando necesitas una cantidad específica de bloques confirmados posteriores a partir de cierto punto del libro mayor.
Casos de uso comunes
- Obtener un número fijo de bloques posteriores: Obtén un número definido de slots de bloques confirmados después de un slot inicial específico.
- Exploración paginada de bloques: Recupera bloques por grupos cuando analices un segmento de la cadena de bloques.
- Monitoreo de bloques recientes: Obtén los últimos N bloques a partir de un slot reciente conocido.
Parámetros de solicitud
El métodogetBlocksWithLimit acepta los siguientes parámetros:
start_slot(u64, obligatorio): El primer slot que se considerará (incluido).limit(u64, obligatorio): La cantidad máxima de slots de bloques que se devolverá. La cantidad total de slots consultados (desdestart_slothastalimitbloques después de este) no debe superar los 500,000 slots.commitment(cadena, opcional): Especifica el nivel de compromiso de la consulta. Si se omite, se usa el compromiso predeterminado del nodo. Se pasa como el único campo de un objeto de configuración en el último parámetro.
Estructura de la respuesta
El camporesult de la respuesta JSON-RPC será un arreglo de enteros u64. Cada entero del arreglo representa el número de slot de un bloque confirmado, desde start_slot hasta el valor especificado de limit.
- Ejemplo: Si
start_slotes 5 ylimites 3, un resultado posible es[5, 6, 7].
Ejemplos
1. Obtener un número limitado de bloques a partir de un slot inicial
Este ejemplo obtiene una lista de hasta 5 slots de bloques confirmados a partir del slot280000000.
2. Obtener bloques con un límite y un nivel de compromiso específico
Este ejemplo obtiene hasta 3 bloques a partir del slot290000000 con el nivel de compromiso finalized.
Consejos para desarrolladores
- Aclaración sobre el rango: El parámetro
limitdetermina la cantidad máxima de slots de bloques que se devolverá. La restricción de 500,000 slots se aplica al rango conceptual examinado (es decir, desdestart_slothastastart_slot + limit - 1). Asegúrate de que este rango conceptual no supere los 500,000 slots, incluso si se encuentran y devuelven menos bloques reales dentro de él. - Disponibilidad de datos del nodo: Es posible que los nodos no conserven información de todos los slots históricos. Un valor muy antiguo de
start_slotpodría devolver menos bloques que el valor especificado delimit, o un arreglo vacío, según la retención del libro mayor del nodo. - Compromiso del bloque: Con Alpenglow,
confirmedyfinalizeddevuelven los mismos bloques comprometidos permanentemente; prefierefinalizedpara código nuevo. Los distintos nodos aún pueden variar brevemente debido al retraso de propagación. - Especificidad del caso de uso:
getBlocksWithLimites ideal cuando conoces el punto de partida y necesitas una cantidad fija de bloques posteriores. Si necesitas todos los bloques de un rango conocido de slots,getBlockspodría ser más apropiado.
getBlocksWithLimit para enumerar una cantidad específica de slots de bloques comprometidos permanentemente en la red Solana.
Métodos relacionados
getBlocks
Obtén todos los bloques dentro de un rango de slots
getBlock
Obtén información detallada de un bloque específico