Verbindung zu einem Knoten

Ich habe ein rpi3 und es muss ein Knoten einer Blockchain sein. Ich habe eine Skriptpython auf Himbeere, die Daten von einem Beschleunigungsmesser sammelt. Einige Bedingungen überprüft, ich sollte diese Daten sowie andere Zeichenfolgen (Gps-Koordinaten und Datum) in einer Blockchain speichern. Ich verwende testrpc und habe web3.js installiert.

Ich starte meinen Tester über cmd, indem ich "testrpc" einfüge, und er zeigt mir die verfügbaren Konten mit ihren privaten Schlüsseln. Um dann damit zu interagieren, muss ich ein weiteres cmd-Fenster öffnen, richtig?

Um mit einem generischen Knoten zu interagieren, muss ich die web3-Bibliothek verwenden. Daher sollte ich im zweiten cmd-Fenster ein node.js-Skript ausführen, das Daten aus dem Python-Skript (z. B. mit einem Socket) übernimmt und die web3-Funktion als Schnittstelle zum Knoten verwendet. Etwas wie das:

var Web3 = require('web3');
var web3 = new Web3(new Web3.providers.HttpProvider('http://localhost:8545'));

web3.isConnected();

Nun, ich stelle mir vor, ich wollte nur einige in node.js geschriebene Werte (und noch nicht die eigentlichen Daten) auf der Blockchain speichern. Ich weiß nicht. Zum Beispiel var x=5e var y=10. Was wäre der vollständige Code, um dies zu tun?

Antworten (1)

auf Blockchain speichern

Ethereum ist etwas komplizierter als eine generische Datenspeicher-Cloud. Sie müssen sich mit dem Konzept von Smart Contracts vertraut machen, z. B. wie Sie sie einsetzen und wie Sie mit ihnen interagieren. Das Werkzeug der Wahl ist im Moment Truffle . Wenn ich fragen darf, womit beabsichtigen Sie, die nodejs auf Ihrem Himbeer-Pi zum Reden zu bringen?

Für das, was ich verstanden habe, funktioniert node.js in diesem Fall als einfacher Wrapper, der es dem Python-Skript ermöglicht, mit einem Ethereum-Knoten über die Web3-API zu kommunizieren. Also "übergebe" ich Daten von einem Skript an ein anderes und schließlich immer im Im zweiten Skript schreibe ich einen Code, um eine Verbindung zum Knoten herzustellen und einen Vertrag bereitzustellen, der meine Daten in der Blockchain speichert. Mein Problem ist der Teil des Codes "Verbindung zum Knoten" ... bitte helfen Sie mir, ich bin verloren ... xD
Beim Verbinden von nodejs mit Nodes kommen zwei Komponenten ins Spiel. Ihr NodeJS-Teil sollte es tun, jetzt müssen Sie einen Node-Client ausführen. Für die Entwicklung wird empfohlen, TestRPC zu verwenden, da es keine Mining-Zeit hat, genug Ether zum Testen hat und Sie die Anzahl der Konten definieren können, indem Sie beim Start --accounts="123" hinzufügen. Verwenden Sie für einen echten Knoten geth und suchen Sie nach den richtigen RPC-Flags. Ich empfehle --rpc --rpcport 8545 --rpcaddr 0.0.0.0 --rpccorsdomain "*" --rpcapi "eth,web3,personal,debug" , aber bitte ändern Sie sie für die Produktion entsprechend.
Entschuldigung, ich verstehe nicht "Beim Verbinden von nodejs mit Knoten kommen zwei Komponenten ins Spiel". Mein Problem ist, dass ich nicht weiß, was ich in das node.js-Skript schreiben soll, um eine Verbindung mit einem Knoten herzustellen, außer diesen 3 Zeilen, die ich geschrieben habe here.Oder, um es klarer zu sagen, ich weiß nicht, wie ich den Code zwischen diesen 3 Zeilen und dem Körper des Smart Contract schreiben soll