Skip to main content
El método RPC getBlocksWithLimit te permite recuperar una lista de números de slots de bloques confirmados a partir de un slot específico y hasta un límite determinado. Esto resulta útil cuando necesitas un número específico de bloques confirmados posteriores a partir de un punto determinado del libro mayor.
Evita el procesamiento por lotes para mejorar el rendimientoProcesar métodos de archivo por lotes aumenta considerablemente la latencia. No se permiten lotes de más de 10 solicitudes.

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étodo getBlocksWithLimit acepta los siguientes parámetros:
  1. start_slot (u64, obligatorio): El primer slot que se tendrá en cuenta (incluido).
  2. limit (u64, obligatorio): El número máximo de slots de bloques que se devolverán. El número total de slots consultados (desde start_slot hasta limit bloques después de este) no debe superar los 500,000 slots.
  3. commitment (string, opcional): Especifica el nivel de compromiso de la consulta. Si se omite, se utiliza el nivel de compromiso predeterminado del nodo. Se pasa como único campo de un objeto de configuración en el último parámetro.

Estructura de la respuesta

El campo result 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 limit especificado.
  • Ejemplo: Si start_slot es 5 e limit es 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 slot 280000000.

2. Obtener bloques con un límite y un nivel de compromiso específico

Este ejemplo obtiene hasta 3 bloques a partir del slot 290000000 mediante el nivel de compromiso confirmed.

Consejos para desarrolladores

  • Aclaración sobre el rango: El parámetro limit determina el número máximo de slots de bloques que se devolverán. La restricción de 500,000 slots se aplica al rango conceptual examinado (es decir, desde start_slot hasta start_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 ese rango.
  • Disponibilidad de datos del nodo: Es posible que los nodos no conserven información de todos los slots históricos. Un start_slot muy antiguo podría devolver menos bloques que el limit especificado, o un arreglo vacío, según la retención del libro mayor del nodo.
  • Confirmación de bloques: Este método devuelve bloques confirmados. El conjunto exacto de bloques puede variar ligeramente según el nivel commitment elegido y el nodo que consultes, especialmente en el caso de slots muy recientes.
  • Especificidad del caso de uso: getBlocksWithLimit es ideal cuando conoces el punto de partida y necesitas un número fijo de bloques posteriores. Si necesitas todos los bloques de un rango de slots conocido, getBlocks podría ser más adecuado.
Esta guía ofrece una descripción clara de cómo usar el método RPC getBlocksWithLimit para enumerar un número específico de slots de bloques confirmados 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