ethereum - tutorial - myetherwallet bitcoin
¿Cómo obtengo el saldo de una cuenta en Ethereum? (2)
¿Cómo puedo descubrir la cantidad de ETH programada en una cuenta determinada en la cadena de bloques Ethereum?
Para la nueva versión de la API web3:
La última versión de la API web3 (vers. Beta 1.xx ) utiliza promesas (asíncronas, como devolución de llamada). Documentación: web3 beta 1.xx
Por lo tanto, es una Promesa y devuelve una Cadena para la dirección dada en wei.
Estoy en Linux (openSUSE), geth 1.7.3, Rinkeby Ethereum testnet , usando Meteor 1.6.1 , y funcionó de la siguiente manera conectándome a través del proveedor de IPC a mi nodo geth:
// serverside js file
import Web3 from ''web3'';
if (typeof web3 !== ''undefined'') {
web3 = new Web3(web3.currentProvider);
} else {
var net = require(''net'');
var web3 = new Web3(''/home/xxYourHomeFolderxx/.ethereum/geth.ipc'', net);
};
// set the default account
web3.eth.defaultAccount = ''0x123..............'';
web3.eth.coinbase = ''0x123..............'';
web3.eth.getAccounts(function(err, acc) {
_.each(acc, function(e) {
web3.eth.getBalance(e, function (error, result) {
if (!error) {
console.log(e + '': '' + result);
};
});
});
});
En la red:
(No programático, pero para completar ...) Si solo desea obtener el saldo de una cuenta o contrato, puede visitar http://etherchain.org o http://etherscan.io .
Desde las consolas geth, eth, pyeth:
Usando la API de Javascript, (que es lo que usan las consolas geth, eth y pyeth), puede obtener el saldo de una cuenta con lo siguiente:
web3.fromWei(eth.getBalance(eth.coinbase));
"web3" es la biblioteca web3.js de Javascript compatible con Ethereum .
"eth" es en realidad una abreviatura de "web3.eth" (disponible automáticamente en geth). Entonces, realmente, lo anterior debe ser escrito:
web3.fromWei(web3.eth.getBalance(web3.eth.coinbase));
"web3.eth.coinbase" es la cuenta predeterminada para su sesión de consola. Puede insertar otros valores para ello, si lo desea. Todos los saldos de las cuentas están abiertos en Ethereum. Por ejemplo, si tiene varias cuentas:
web3.fromWei(web3.eth.getBalance(web3.eth.accounts[0]));
web3.fromWei(web3.eth.getBalance(web3.eth.accounts[1]));
web3.fromWei(web3.eth.getBalance(web3.eth.accounts[2]));
o
web3.fromWei(web3.eth.getBalance(''0x2910543af39aba0cd09dbb2d50200b3e800a63d2''));
EDITAR: Aquí hay un script útil para enumerar los saldos de todas sus cuentas:
function checkAllBalances() { var i =0; eth.accounts.forEach( function(e){ console.log(" eth.accounts["+i+"]: " + e + " /tbalance: " + web3.fromWei(eth.getBalance(e), "ether") + " ether"); i++; })}; checkAllBalances();
Contratos internos:
En los contratos internos, Solidity proporciona una forma sencilla de obtener saldos. Cada dirección tiene una propiedad .balance, que devuelve el valor en wei. Contrato de muestra:
contract ownerbalancereturner {
address owner;
function ownerbalancereturner() public {
owner = msg.sender;
}
function getOwnerBalance() constant returns (uint) {
return owner.balance;
}
}