⚡ NEU: Elysium- Testnet en zu QuicknodeTestnet Endpunkte für die EVM-Chain von Kinetiq auf HyperEVM
Holen Sie sich ein endpointSOC 2 Typ II-zertifiziert · ISO 27001
Der Key-Value-Store ist Bestandteil jedes „ Quicknode “-Tarifs, ohne dass zusätzliche Ressourcen bereitgestellt werden müssen. Erstellen und verwalten Sie Listen über das Entwicklerportal unter Quicknode oder führen Sie alle Vorgänge über 13 REST-Endpunkte mit dem bereits im Konto vorhandenen API-Schlüssel durch.
Erstelle eine Liste.
Über das Entwicklerportal oder einen POST-Aufruf an die REST-API.
Lies es in deiner Pipeline.
Rufen Sie „qnLib.qnContainsListItems“ in einem „ Streams “-Filter auf oder binden Sie die Liste in einen Webhook ein.
Aktualisieren Sie es von überall aus.
PATCH die Liste von einem Backend oder einer agent. Ausgeführte Filter lesen die aktuelle Version aus.
Der Key-Value-Store enthält die Listen und Werte, die von Ihren Filtern unter Streams , Webhooks sowie von externen Apps gelesen und geschrieben werden. Fügen Sie über die REST-API eine Wallet hinzu oder löschen Sie einen Vertrag – ein laufender Filter liest dann die aktuelle Version ein.
Verfügbar bei jedem „ Quicknode “-Tarif.
Aktualisieren Sie die dynamische Liste, anhand derer ein laufender „ Streams “-Filter Abgleiche durchführt, ohne den Filter neu bereitzustellen.
Ändern Sie die Liste, ohne den Filtercode zu verändern.
Ein PATCH-Aufruf über die REST-API ändert Folgendes: qnLib.qnContainsListItems sieht.
Listen und Werte werden überall dort aktualisiert, wo sie verwendet werden.
Wenn Sie Ihre Liste oder Werte aktualisieren, sind diese global unter Streams, Webhooks sowie über die REST-API verfügbar.
Speichern Sie Millionen von Einträgen unter einem einzigen Schlüssel.
Filter überprüfen jeden Block anhand der gesamten Liste, egal wie groß diese auch wird.
qnLib.qnContainsListItems(„watched_wallets“, Absender)
Der Schlüssel-Wert-Speicher verfügt über zwei Datentypen: Listen und Werte.
Eine benannte Sammlung von Zeichenfolgenelementen, die unter einem einzigen Schlüssel gespeichert sind. Ideal für Zugehörigkeitsprüfungen: Befindet sich diese Adresse in meiner Beobachtungsliste?
qnLib.qnUpsertListElemente zu Ihrer Liste hinzufügen und daraus entfernenqnLib.qnAddListItemEinen Artikel hinzufügenqnLib.qnRemoveListItemein Element entfernenqnLib.qnGetListdie gesamte Liste lesenqnLib.qnContainsListItemsAbfrage der Zugehörigkeit zu einer ChargeqnLib.qnDeleteListDie Liste löschenBei den Einträgen wird zwischen Groß- und Kleinschreibung unterschieden: 0xAbC1 und 0xabc1 sind unterschiedliche Einträge. Speichern Sie die Blockchain-Adressen in der Schreibweise, mit der Ihr Filter den Abgleich durchführt.
Ein einzelnes Schlüssel-Wert-Paar. Am besten geeignet zum Speichern und Abrufen eines bestimmten Datenpunkts im Zeitverlauf, beispielsweise des zuletzt verarbeiteten Blocks.
qnLib.qnAddValueeinen Wert eingebenqnLib.qnGetValueeinen Wert auslesenqnLib.qnBulkValuesmehrere auf einmal schreibenqnLib.qnDeleteValueeinen Wert löschenDie Daten bleiben von Block zu Block erhalten, von einer Ausführung von „ Streams “ zur nächsten. Schreibe „lastProcessedBlock“ als 19271294 am Ende eines Durchgangs und lesen Sie ihn zu Beginn des nächsten Durchgangs noch einmal vor.
Der Key-Value-Store ist auf das „ Quicknode “-Konto beschränkt und gilt nicht für ein einzelnes Projekt oder eine bestimmte „ endpoint “.Über die REST-API können Sie außerdem den Status abrufen, den Ihr „ agents “ zwischen den Ausführungen beibehält.
Streams
Filter führen bei Eingang von Blöcken mit qnLib.qnContainsListItems Überprüfungen der Batch-Zugehörigkeit durch.
Webhooks
Webhooks die gleichen Listen auslesen, die auch Ihre „ Streams “-Filter überprüfen.
REST-API
13 Endpunkte für Ihr Backend, Ihre Skripte und Ihre CI/CD-Pipelines. Es handelt sich um dieselben Daten, die ein Filter ausliest.
Lesen und vergleichen Sie Listen und rufen Sie Werte in Ihrem „ Streams “-Filter kostenlos ab. Die Nutzung Ihrer Listen in „ Webhooks “ ist ebenfalls enthalten.
Zwei Apps nutzen dieses Muster bereits. Klonen Sie eine davon.
Beide Beispiel-Apps basieren genau auf dem Ablauf, der auf dieser Seite beschrieben wird: Ein „ Streams “-Filter, der eine Beobachtungsliste ausliest, die im Key-Value-Store gespeichert ist und während der Ausführung des Streams aktualisiert wird.
const Absender = txs.map(tx => tx.von)const Treffer = await qnLib.qnContainsListItems(„watched_wallets“, Absender)
Überwachen Sie eine Liste von Wallet-Adressen auf Solana und Ethereum. Wenn Sie in der Benutzeroberfläche eine Adresse hinzufügen oder entfernen, aktualisiert die App die Liste im Schlüssel-Wert-Speicher, die von den Filtern überprüft wird. Der Stream wird dabei nie neu bereitgestellt.Next.js · TypeScript · SSE
const Händler = Aufträge.map(o => o.Benutzer)const Treffer = await qnLib.qnContainsListItems(„watched_traders“, Händler)
Verfolgen Sie Handelsaufträge auf „ Hyperliquid Core“ in Echtzeit. Beobachten Sie Händleradressen und Auftragsstatus live in Key-Value-Store-Listen, sodass sich Filterkriterien ändern lassen, ohne dass der Stream neu gestartet werden muss.Next.js · TypeScript · SSE
Dokumentation zum Schlüssel-Wert-Speicher
Jedes „ endpoint “ und jede Funktion.
Preise
Aktuelle Bedingungen für Schreibvorgänge und Speicherung.
Erstellen Sie es einmal. Rufen Sie es über jeden „ Streams “-Filter und jeden Webhook des Kontos ab und aktualisieren Sie es von überall aus über die REST-API.
Neu bei „ Quicknode “? Erstellen Sie gleich ein Konto und Ihre erste Liste.
Häufig gestellte Fragen
Kosten, Einschränkungen, Umfang und wie die Oberflächen zusammenpassen. Die Dokumentation zum Key-Value-Store behandelt alle „ endpoint “ und Funktionen.
Der Key-Value-Store ist der Speicher auf Kontoebene v Quicknode, der die kleinen Zustandsdaten enthält, auf die eine Datenpipeline angewiesen ist, und der als Listen und Werte organisiert ist. Streams -Filter, Webhooks sowie externe Anwendungen lesen und schreiben alle dieselben Daten – über qnLib-Funktionen innerhalb der Filter und über eine REST-API in allen anderen Fällen. Eine Liste wie „watched_wallets“ steuert die Überprüfung der Mitgliedschaft. Ein Wert wie „lastProcessedBlock“ enthält einen Datenpunkt, den eine Pipeline im Laufe der Zeit aktualisiert.