Welchen RPC kann ich verwenden, um Bitcoin nach eingehenden Rohtransaktionen abzufragen?

Ich muss die rohen Transaktionen erfassen und speichern, die durch meine lokale Full-Node-Bitcoin-Instanz kommen. Ich habe hier gelesen, dass es möglich ist, aber die speziellen RPC-Aufrufe werden nicht erwähnt. Ich sehe auch die Rohtransaktions-JSON-RPC-API , aber es ist immer noch nicht klar, wie man diese verwendet, um die Rohtransaktionen regelmäßig abzufragen.

Es scheint, als ob Bitcoin-Sniffer (geschrieben in Python) das ist, was ich versuche und brauche, und da ich Java verwende, scheint es, dass Bitcoin tatsächlich auf eingehende Transaktionen lauschen kann, aber ich sehe keine Beispielcodes dazu, wie man das macht Dies.

Meine Frage ist, wie verwende ich die HTTP-POST-JSON-RPC-API zurück zu meiner lokalen Bitcoin-Instanz, um Transaktionen abzufragen? Gibt es ein Tutorium?

Ich würde mir vorstellen, dass ich in einem kontinuierlichen Thread laufen würde und bitcoind (den Daemon) regelmäßig nach dem neuesten Stapel von Transaktionen abfragen würde. Ist das möglich?

Bitcoin-Transaktionen kommen in Strömen, es ist besser, dafür ZMQ zu verwenden. Lesen Sie doc/zmq.md im Bitcoin-Repository.
Vielen Dank. Das scheint eine brauchbare Alternative zu sein. Nur zur Verdeutlichung: Wissen Sie, ob das, was von Bitcoin an 0MQ veröffentlicht wird, die Rohtransaktionen (die Daten und alle ihre Felder) in deserialisierter Form (JSON nicht Hex) sind?
Wenn es sich um ein serialisiertes Hex handelt, müssen Sie es deserialisieren. Dafür gibt es mit bitcoin-cli komfortable Funktionen.

Antworten (2)

Meine Frage ist, wie verwende ich die HTTP-POST-JSON-RPC-API zurück zu meiner lokalen Bitcoin-Instanz, um Transaktionen abzufragen? Gibt es ein Tutorium?

Informationen zu Bitcoin RPC finden Sie unter https://bitcoin.org/en/developer-reference#remote-procedure-calls-rpcs

Außerdem können Sie Bitcoin-RPC-Aufrufe tatsächlich in https://chainquery.com/bitcoin-cli ausführen . Wenn Sie nur sehen möchten, was sie zurückgeben

Ich würde mir vorstellen, dass ich in einem kontinuierlichen Thread laufen würde und >bitcoind (den Daemon) regelmäßig nach dem neuesten Stapel von Transaktionen abfragen würde. Ist das möglich?

Das ist der Ansatz, den ich in meinem Projekt verwende, Sie können den Code in https://github.com/JRamosGarcia/bitcoindAdapter sehen Quarz für periodische Arbeiten. Es ist noch in Arbeit, aber vielleicht finden Sie einen Code oder eine Technologie, die Ihnen hilft.

kommentierte Renlord

Bitcoin-Transaktionen kommen in Streams, es ist besser, ZMQ dafür zu verwenden. Lesen Sie doc/zmq.md im Bitcoin-Repository

und

[die Daten sind nicht json, sondern] serialisiertes Hex, Sie müssen es deserialisieren. Dafür gibt es mit bitcoin-cli komfortable Funktionen.