Ich betreibe einen Ethereum-Knoten remote mit einem Start-Shell-Skript. Der Befehl im Shell-Skript lautet wie folgt:
/usr/bin/geth --testnet --rpc --rpcport "5678" --rpcaddr "0.0.0.0" --rpccorsdomain "*" || logger "Geth not running"
Jetzt hat meine NodeJS-App auf dem lokalen Computer den folgenden Code:
var express = require('express');
var router = express.Router();
var Web3 = require('web3');
if (typeof web3 !== 'undefined') {
web3 = new Web3(web3.currentProvider);
} else {
var web3 = new Web3(new Web3.providers.HttpProvider("http://<IP>:<PORT>"));
}
var test_address = "ad9ffbd06d27d919b2f8d08c9abb5a4a90410eb1";
router.get('/', function(req, res) {
res.render('index', { title: 'Balance' });
});
router.get('/check', function(req, res) {
/*var coinbase = web3.eth.coinbase;
var balance = web3.eth.getBalance(coinbase);*/
//var balance = /*web3.fromWei(web3.getBalance(web3.coinbase));*/ web3.eth.checkAllBalances();
/*var coinbase = web3.eth.coinbase;*/
//var balance = web3.eth.getBalance(test_address);
/*web3.eth.getCoinbase(function(error, result){
if(error)
res.send("Error: "+error);
else
res.send("Result: "+result);
});*/
var block = web3.eth.getBalance(test_address);
console.log(block)
});
module.exports = router;
Problem 1 : Immer wenn ich versuche, die Coinbase-Methode (im obigen Code kommentiert) zu verwenden, um das Guthaben abzurufen, heißt es nur: Fehler: Etherbase-Adresse muss explizit angegeben werden . Ich habe bereits ein Konto erstellt mit:
geth account new
Soweit ich weiß, wird die Standard-Coinbase / Etherbase immer das erste erstellte Konto sein, daher kann ich nicht wirklich verstehen, warum ich diesen Fehler bekomme.
Ausgabe 2:
Nachdem ich das Konto erstellt hatte, überwies ich 10000 Ether auf das neue Konto von der Website test.ether.camp. Immer wenn ich den Kontostand des neuen Kontos von der Ether Camp-Website überprüfe, wird ein Ether-Kontostand von 10000 angezeigt, während der obige Code 0 zurückgibt. Könnte es sein, dass der Block mit den Transaktionsinformationen (der, den ich von Ether Camp zu meinem Konto gemacht habe) dies nicht hat wurde in meinen Knoten heruntergeladen? Oder mache ich hier etwas falsch?
Vielen Dank im Voraus,
frei Läufer
q9f