Get it on Google Play
19-10-2018
 

Ecommerce con Etherum: Transacciones con etherum y curl

Como cada vez que hago un vídeo que tiene una carga significativa de código o instrucciones aquí tenéis el las instrucciones ejecutadas para hacer todo lo que hemos hecho en el vídeo.

Primero. Lo primero que haremos será arrancar nuestro nodo Etherum usando geth, aquí os dejo la URL del proyecto https://github.com/ethereum/go-ethereum/wiki/geth:

geth --dev --rpc --rpccorsdomain "*" --rpcapi "db,eth,net,web3,personal"

Con esta instrucción arrancamos el nodo de Etherum en modo desarrollo, lo que nos permite trabajar con datos y cuentas no reales. También le configuramos el API RPC y activamos todas las APIs para poder hacer llamadas directamente vía curl. Finalmente también activamos CORS(Aunque no vamos a usarlo) por si queremos hacer llamadas desde un navegador.

Segundo. Ya podemos operar vía ‘curl’ tal como hacemos en el vídeo, en este caso os paso todo el ‘chorron’ de instrucciones en un script bash:

#!/bin/bash

ACCOUNT1="0xad85497e474be139b572a9e7c94fa6983759d610"
ACCOUNT2="0x778591c7c4b923e5a6719f1aea91177e02729e04"

echo ""
echo "=============================="
echo "Obteniendo listado de cuentas:"
echo "=============================="
curl -X POST -H 'Content-Type: application/json' --data '{"jsonrpc":"2.0","method":"eth_accounts","params":[],"id":1}' http://127.0.0.1:8545

echo ""
echo "==============================="
echo "Obteniendo balance de las cuentas:"
echo "==============================="
PARAMS='{"jsonrpc":"2.0","method":"eth_getBalance","params":["'$ACCOUNT1'", "latest"],"id":1}'
curl -X POST -H 'Content-Type: application/json' --data "$PARAMS" http://127.0.0.1:8545

PARAMS='{"jsonrpc":"2.0","method":"eth_getBalance","params":["'$ACCOUNT2'", "latest"],"id":1}'
curl -X POST -H 'Content-Type: application/json' --data "$PARAMS" http://127.0.0.1:8545

echo ""
echo "==============================="
echo "Crear nuevo monedero:"
echo "==============================="
curl -X POST -H 'Content-Type: application/json' --data '{"jsonrpc":"2.0","method":"personal_newAccount","params":["password-de-la-cuenta"],"id":1}' http://127.0.0.1:8545

echo ""
echo "==============================="
echo "Transferir dinero:"
echo "==============================="
PARAMS='{"jsonrpc":"2.0","method":"eth_sendTransaction","params":[{"from": "'$ACCOUNT1'", "to": "'$ACCOUNT2'", "value": "0xc63"}],"id":1}'
curl -X POST -H 'Content-Type: application/json' --data "$PARAMS" http://127.0.0.1:8545

Os dejo aquí también la documentación de la API https://github.com/ethereum/go-ethereum/wiki/geth.

Espero que os resulte útil y si queréis apoyar, pues ya sabéis: Compartir, dale a ‘like’ y suscribirse. Muchísimas gracias.

Etherum Ecommerce Curl

Etherum Ecommerce Curl

Si te ha servido, por favor comparte
 

Leave a Reply