¿Cómo sé qué tan "confirmado" es el resultado de llamar a la API getBalance?

La documentación para getBalance no me parece muy clara. Quisiera saber el saldo pero quiero saber cuantas confirmaciones tiene el saldo devuelto.

Supuse que pasar el parámetro "pendiente" incluiría el saldo de todas las transacciones (incluso las que no tienen confirmaciones o son muy pocas), pero si esto es cierto, ¿cómo hacer lo contrario? Quiero saber el saldo con un alto numero de confirmaciones, y los params alternativos a pasar (en vez de "pendientes") son "latest" y "earliest", cuyo significado documentado no me parece claro:

"earliest" - for the earliest/genesis block
"latest" - for the latest mined block
"pending" - for the pending state/transactions

¿Algunas ideas? ¡Gracias!

Respuestas (1)

obtener saldo con un número de bloque

Puede pasar el número de bloque como parte del parámetro.

Aquí está la dirección de Kraken: 0x2910543af39aba0cd09dbb2d50200b3e800a63d2 .

Veamos cuál es el último número de bloque:

> eth.blockNumber
1456129

Obtengamos el último saldo de Kraken:

> eth.getBalance("0x2910543af39aba0cd09dbb2d50200b3e800a63d2", "latest")
4.46304933021672757555818e+23

Obtengamos el saldo en el bloque 1456109:

> eth.getBalance("0x2910543af39aba0cd09dbb2d50200b3e800a63d2", 1456109)
4.46511558309272757555818e+23

Obtengamos el saldo en el bloque 145110:

> eth.getBalance("0x2910543af39aba0cd09dbb2d50200b3e800a63d2", 1456110)
4.46304933021672757555818e+23


Confirmaciones

El número de confirmaciones es solo el número de bloque actual menos el número de bloque que especificó para la getBalance(...)llamada.

En este ejemplo, el saldo en el bloque 1456109 tenía 10 confirmaciones (= 1456129 - 1456109).


Pendiente

El saldo con el parámetro "pendiente" incluirá cualquier transacción que esté pendiente, es decir, transmitida a la red peer-to-peer, pero que aún no se haya incluido en ningún bloque extraído.


Más reciente

El saldo con el parámetro "más reciente" será el saldo del último bloque, que es el número de bloque informado por eth.blockNumber.

No tenía ni idea. ¡Eso es genial!
gracias, eso es mucho más claro ahora! si alguien pudiera mejorar los documentos entonces, sería increíble
Gracias, esto es útil, pero tenga en cuenta que verificar solo un bloque no es seguro. Idealmente queremos saber cuánto tiempo ha estado estático el saldo . Si queremos 10 confirmaciones, debemos verificar los últimos 10 bloques para asegurarnos de que no haya habido un retiro o un depósito durante ese tiempo. (Por cierto, ¡gracias por tu token de prueba!)