Bereitgestellte Smart-Contract-Methoden aktualisieren den Wert nicht, wenn die Geth-Instanz neu gestartet wird. Warum?

Geth mit folgendem Befehl gestartet

geth --identity "testpvtnode" --rpc --rpcport "8545" --rpccorsdomain "*" --datadir <pvtnetdatapath> --port "30303" --rpcapi db,eth,net,web3,personal --networkid 123 console 2>> Logfile

Zugriff auf den bereitgestellten Vertrag über eine Benutzeroberfläche, die durch Verweis auf die folgenden Links erstellt wurde - ( Zähler , Stack Exchange-Frage zur Erstellung der Benutzeroberfläche )

Ich habe die Benutzeroberfläche erfolgreich erstellt und mit SmartContract interagiert, aber die Funktionen funktionieren nicht richtig (die Funktion kann aufgerufen und die Transaktion erfolgreich ausgeführt werden, aber der Zählerwert wird nicht aktualisiert), nachdem ich die Geth-Instanz neu gestartet habe.

Bitte beachten Sie: Das private Netz befindet sich auf meinem PC (nicht als Server festgelegt).

hast du die transaktionen abgebaut?

Antworten (1)

Ich denke, Sie müssen Ihre Transaktionen abbauen mit:miner.start()

Sie sollten eine Weile warten, sobald Sie den Mining-Prozess beendet habenminer.stop()

Aber bevor Sie das tun, sollten Sie minerapi mit der Befehlszeile von geth laden:

--rpcapi db,eth,net,web3,personal,miner 
miner.start()Ich habe und in meinem DApp-Code verwendet miner.stop, aber er wird nicht ausgeführt (verwendet als web3.miner.start()und web3.miner.stop()). Der Code bleibt bei web3.miner.start(). Das gleiche Problem, mit dem ich web3.personal.unlockAccountauch konfrontiert bin. Ich muss also immer den Miner starten und das Konto über die Geth-Konsole entsperren. Wissen Sie, wie Sie dieses Problem lösen können?
Verwenden Sie miner.start und stop auf Ihrer Geth-Konsole, nicht auf Ihrem Code.
Ich mache das immer nur so. Aber es ist sehr schwierig, es jedes Mal auf der Konsole zu tun. Warum kann die API nicht in DApp Code verwendet werden?
Sie können ein Skript verwenden, um das Mining zu automatisieren ethereum.stackexchange.com/questions/10262/…
Aber ich möchte die Mining-API zu meinem DApp-Code hinzufügen.