getBlockHeight RPC-Methode ist eine einfache Möglichkeit, einen Solana-Knoten nach seiner aktuellen Blockhöhe abzufragen. Die Blockhöhe repräsentiert die Anzahl der Blöcke, die seit dem Genesis-Block (Slot 0) verarbeitet wurden.
Diese Methode ist nützlich, um schnell zu verstehen, wie weit die Kette fortgeschritten ist oder um die neueste Blockhöhe auf einem bestimmten Commitment-Level zu referenzieren.
Häufige Anwendungsfälle
- Überwachung des Kettenfortschritts: Rufen Sie diese Methode regelmäßig auf, um zu sehen, wie die Kette voranschreitet.
- Einen Überblick über die Kettenlänge erhalten: Bestimmen Sie die Gesamtanzahl der bis zu einem bestimmten Punkt verarbeiteten Blöcke (basierend auf dem Commitment).
- Abgleich mit anderen Daten: Verwenden Sie die Blockhöhe als Referenzpunkt, wenn Sie andere On-Chain-Daten oder Ereignisse analysieren.
Parameter
getBlockHeight kann optional ein Konfigurationsobjekt als ersten Parameter entgegennehmen (oder ohne Parameter aufgerufen werden, um Standardwerte zu verwenden):
config(Objekt, optional): Ein Konfigurationsobjekt mit den folgenden Feldern:commitment(String, optional): Gibt das Commitment-Level an, das für die Abfrage verwendet werden soll. Standard istfinalized.finalized: Der Knoten wird den neuesten Block abfragen, der von der Supermehrheit des Clusters als maximal gesperrt bestätigt wurde.confirmed: Der Knoten wird den neuesten Block abfragen, über den von einer Supermehrheit des Clusters abgestimmt wurde.processed: Der Knoten wird seinen neuesten Block abfragen. Beachten Sie, dass der Block möglicherweise nicht vollständig ist.
minContextSlot(Zahl, optional): Der minimale Slot, bei dem die Anfrage ausgewertet werden kann. Dies stellt sicher, dass die zurückgegebene Blockhöhe von einem Slot gleich oder größer alsminContextSlotstammt.
Entwicklertipps
- Commitment-Level ist wichtig: Die zurückgegebene Blockhöhe kann je nach angegebenem
commitmentLevel variieren.finalizedbietet die stabilste Höhe, währendprocessedmöglicherweise eine aktuellere, aber potenziell vorübergehende Höhe bietet. minContextSlotfür Konsistenz: Verwenden SieminContextSlot, wenn Sie sicherstellen müssen, dass die Blockhöhe aus einem Zustand abgefragt wird, der mindestens so aktuell ist wie ein spezifischer Slot, den Sie verfolgen.- Nicht eine Slotnummer: Denken Sie daran, dass die Blockhöhe sich von der Slotnummer unterscheidet. Ein Slot ist ein Zeitraum, und nicht jeder Slot erzeugt einen Block (dies sind sogenannte übersprungene Slots). Die Blockhöhe ist die Anzahl der tatsächlich erzeugten Blöcke.
- Grundlegende Kettengesundheitsprüfung: Obwohl einfach, kann
getBlockHeightTeil einer grundlegenden Kettengesundheits- oder Synchronisierungsprüfung für Ihre Anwendung oder Ihr Überwachungssystem sein.
Antwort
Das Feldresult der JSON-RPC-Antwort wird eine einzelne Zahl sein:
blockHeight(Zahl): Die aktuelle Blockhöhe (u64) des Knotens gemäß dem angegebenen Commitment-Level.
Beispiel: Abrufen der aktuellen Blockhöhe
Lassen Sie uns die aktuelle Blockhöhe von der Helius Devnet RPC abrufen. Hinweis: Ersetzen SieYOUR_API_KEY durch Ihren tatsächlichen Helius API-Schlüssel in den unten stehenden Beispielen.