¿Cuál es la forma más sencilla de ejecutar un fragmento de código en una dirección específica de la cadena de bloques principal localmente mediante la interfaz de línea de comandos?
Aquí se demuestra cómo reproducir un archivo mp3 en función de los datos de entrada mediante el comando geth
, pero ¿cómo puede ejecutar el código real con su lógica en su máquina local para fines de prueba propios?
El método JSON_RPC eth_call le permite simular una transacción en la cadena de bloques, incluidas las ejecuciones de contratos.
Se puede acceder a este método en geth o web3.js como
eth.call({from: eth.accounts[0], to: myContract, gas: 1000000, value: web3.toWei(1,"ether")})
Si conoce el ABI de un contrato, puede utilizar
var myContract = eth.contract(myABI).at(contractAddress);
var result = myContract.myMethod.call(arg1,arg2,arg3,{from:myAddress, gas:1000000})
Si desea obtener un seguimiento de depuración de una transacción, puede enviar una transacción y luego usar debug_traceTransaction .
tayvano
kenorb
Nicolás Massart
kenorb