Bei Verwendung von Web3.js wird das Guthaben als 0 angezeigt, während https://test.ether.camp/ ein anderes Guthaben anzeigt

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,

Antworten (1)

Sie laufen

geth --testnet

was Geth anweist, das Ropsten -Testnetz zu verwenden . Jedoch,

https://test.ether.camp/

läuft immer noch das alte, veraltete Morden -Testnetz. Verwenden

https://ropsten.ether.camp/

um Ihr aktuelles Guthaben zu überprüfen. Lesen Sie mehr über Ropsten und Morden .

Ich werde Sie sofort positiv bewerten, Sir! Auch wenn ich einen RPC zum Remote-Laufen mache, kann ich die Kontoliste / den Saldo des Kontos nicht abrufen. Es heißt auch, dass die Coinbase nicht festgelegt ist. Aber soweit ich weiß, soll die Coinbase nicht das erste Konto sein, das erstellt wird, wenn Coinbase explizit nicht definiert ist? Wenn ich die Geth-Befehlszeile auf dem Remote-Computer verwende, werden die beiden von mir erstellten Konten angezeigt, während der RPC 0 Konten zurückgibt. Könntest du etwas Licht hineinstellen?
Oh, ich vergaß zu erwähnen, bitte poste nicht mehrere Probleme in einer Frage. Fragen Sie einfach einen anderen bezüglich Ihres Coinbase-Problems.