Configuré un env docker basado en Ubuntu para trabajar con Geth (por ahora en Testnet) y JSON-RPC de Geth, sin embargo, cada llamada que hago a JSON-RPC falla en 0, nulo o un error porque el método sería no existe. Algunas llamadas (cuentas, precio del gas) sí funcionan en la red 'regular'.
Configuré Geth en Rinkeby Testnet con la siguiente línea:geth --rinkeby --rpc --rpcaddr "127.0.0.1" --rpcport "8000"
Aquí hay algunos ejemplos de lo que estoy recibiendo de vuelta; lo probé con localhost y 127.0.0.1. Todo en curl, colóquelo en la propia CLI del contenedor.
curl -X POST --data '{"jsonrpc":"2.0","method":"eth_getTransactionReceipt","params":["0xb903239f8543d04b5dc1ba6579132b143087c68db1b2168786408fcbce568238"],"id":1}' http://localhost:8000
{"jsonrpc":"2.0","id":1,"result":null}
curl -X POST --data '{"jsonrpc":"2.0","method":"eth_getCompilers","params":[],"id":1}' http://localhost:8000
{"jsonrpc":"2.0","id":1,"error":{"code":-32601,"message":"The method eth_getCompilers does not exist/is not available"}}
curl -X POST --data '{"jsonrpc":"2.0","method":"eth_accounts","params":[],"id":2}' http://localhost:8000
{"jsonrpc":"2.0","id":2,"result":[]}
Para el último ejemplo, para probar que hay cuentas:
geth account list
Account #0: {678decf23eb929b88d7a55c272b73aa6e1d0d4bc} keystore:///root/.ethereum/keystore/UTC--2017-10-03T12-56-37.565267100Z--678decf23eb929b88d7a55c272b73aa6e1d0d4bc
Si alguien pudiera ayudarme y decirme cuál podría ser la causa, sería genial.
este problema puede ocurrir si no ha desbloqueado su cuenta o si el minero no ha iniciado
- Para desbloquear la cuenta:
abre tu consola geth y ejecuta el siguiente comando
personal.unlockAccount("your account key","your passphrase",time in miliseconds)
para más: - API
2.Para ejecutar el minero
abre tu consola geth y ejecuta el siguiente comando
miner.start(2)
Después de hacer esto, intente ejecutar sus transacciones.
A partir de la respuesta de SwapnilKumbhar, descubrí que el problema era que la cuenta no estaba registrada en Rinkeby Testnet, solo en la red normal. Específicamente, registrar una nueva cuenta en Rinkeby Testnet funcionó.
Raimond van Mouche