Skip to main content
Die getBlocksWithLimit RPC-Methode ermöglicht es Ihnen, eine Liste bestätigter Block-Slot-Nummern abzurufen, beginnend bei einem angegebenen Slot und bis zu einem bestimmten Limit zurückzugeben. Dies ist nützlich, wenn Sie eine bestimmte Anzahl nachfolgender bestätigter Blöcke ab einem bestimmten Punkt im Ledger benötigen.
Vermeiden Sie Batching für bessere LeistungBatching von Archivierungsmethoden erhöht die Latenz erheblich. Batches mit mehr als 10 Anfragen sind nicht erlaubt.

Häufige Anwendungsfälle

  • Abrufen einer festen Anzahl nachfolgender Blöcke: Erhalten Sie eine definierte Anzahl von Block-Slots, die nach einem bestimmten Start-Slot bestätigt wurden.
  • Paginierte Block-Exploration: Abrufen von Blöcken in Abschnitten bei der Analyse eines Segments der Blockchain.
  • Überwachung neuer Blöcke: Erhalten Sie die letzten N Blöcke von einem bekannten, kürzlich erfolgten Slot.

Anfrageparameter

Die getBlocksWithLimit Methode erfordert folgende Parameter:
  1. start_slot (u64, erforderlich): Der erste zu berücksichtigende Slot (einschließlich).
  2. limit (u64, erforderlich): Die maximale Anzahl von Block-Slots, die zurückgegeben werden sollen. Die Gesamtzahl der abgefragten Slots (von start_slot bis zu limit Blöcke danach) darf 500.000 Slots nicht überschreiten.
  3. commitment (String, optional): Gibt das Commitment-Level für die Abfrage an. Wenn weggelassen, wird das Standard-Commitment des Knotens verwendet. Dies wird als einziges Feld in einem Konfigurationsobjekt als letzter Parameter übergeben.

Antwortstruktur

Das result Feld der JSON-RPC-Antwort wird ein Array von u64-Integern sein. Jeder Integer im Array repräsentiert eine bestätigte Block-Slot-Nummer, beginnend bei start_slot bis zu dem angegebenen limit.
  • Beispiel: Wenn start_slot 5 ist und limit 3 ist, könnte ein mögliches Ergebnis [5, 6, 7] sein.

Beispiele

1. Abrufen einer begrenzten Anzahl von Blöcken ab einem Start-Slot

Dieses Beispiel ruft eine Liste von bis zu 5 bestätigten Block-Slots ab, beginnend ab Slot 280000000.

2. Abrufen von Blöcken mit Limit und einem spezifischen Commitment-Level

Dieses Beispiel ruft bis zu 3 Blöcke ab, beginnend ab Slot 290000000 unter Verwendung des confirmed Commitment-Levels.

Entwickler-Tipps

  • Bereichsklärung: Der limit Parameter bestimmt die maximale Anzahl von Block-Slots, die zurückgegeben werden sollen. Die 500.000-Slot-Beschränkung gilt für den konzeptionellen Bereich, der gescannt wird (d. h., von start_slot bis start_slot + limit - 1). Stellen Sie sicher, dass dieser konzeptionelle Bereich 500.000 Slots nicht überschreitet, selbst wenn innerhalb dieses Bereichs weniger tatsächliche Blöcke gefunden und zurückgegeben werden.
  • Verfügbarkeit der Knotendaten: Knoten behalten möglicherweise nicht Informationen für alle historischen Slots. Ein sehr alter start_slot könnte weniger Blöcke als angegeben limit zurückgeben oder ein leeres Array, abhängig von der Ledger-Aufbewahrung des Knotens.
  • Blockbestätigung: Diese Methode gibt bestätigte Blöcke zurück. Die genaue Menge an Blöcken kann je nach gewähltem commitment Level und dem abgefragten Knoten leicht variieren, insbesondere für sehr aktuelle Slots.
  • Spezifität des Anwendungsfalls: getBlocksWithLimit ist ideal, wenn Sie den Startpunkt kennen und eine feste Anzahl nachfolgender Blöcke benötigen. Wenn Sie alle Blöcke in einem bekannten Slotbereich benötigen, könnte getBlocks besser geeignet sein.
Dieser Leitfaden bietet einen klaren Überblick, wie man die getBlocksWithLimit RPC-Methode verwendet, um eine bestimmte Anzahl bestätigter Block-Slots im Solana-Netzwerk aufzulisten.

Verwandte Methoden

getBlocks

Alle Blöcke innerhalb eines Slotbereichs abrufen

getBlock

Detaillierte Informationen für einen bestimmten Block abrufen