Estoy tratando de usar https://github.com/kesar/ethereum-php en el back-end de mi sitio web.
Seguí un tutorial http://iotbl.blogspot.ca/2017/03/setting-up-private-ethereum-testnet.html para configurar dos cadenas locales en Ubuntu Server 16.04.
Esto es lo que imprime la versión geth:
Geth
Version: 1.8.2-stable
Git Commit: b8b9f7f4476a30a0aaf6077daade6ae77f969960
Architecture: amd64
Protocol Versions: [63 62]
Network Id: 1
Go Version: go1.9.4
Operating System: linux
GOPATH=
GOROOT=/usr/lib/go-1.9
Así empiezo las cadenas:
geth --nodiscover --verbosidad 9 --networkid 50000 --port 50000 --datadir Cadena01/consola
geth --nodiscover --verbosity 9 --networkid 50000 --port 50001 –datadir Chain02/ consola
Puedo agregar un terminal dentro del mismo nivel para chain2 y el comando net.peerCount
muestra 1 como se esperaba.
Con ese trabajo, traté de pasar por https://github.com/kesar/ethereum-php/blob/master/README.md y me encontré con un tiempo de espera. Este es mi código PHP:
$client = new EthereumClient('http://127.0.0.1:50000');
$iBlockNum = $client->eth()->blockNumber() ;
Esto es lo que veo en el registro de geth:
TRACE[03-08|15:56:06] Accepted connection addr=127.0.0.1:43610
TRACE[03-08|15:56:11] Failed RLPx handshake addr=127.0.0.1:43610 conn=inbound err="read tcp 127.0.0.1:50000->127.0.0.1:43610: i/o timeout"
TRACE[03-08|15:56:11] Setting up connection failed id=0000000000000000 err="read tcp 127.0.0.1:50000->127.0.0.1:43610: i/o timeout"
Esto es lo que Wireshark muestra como enviado desde el puerto 43610 al puerto 50000:
{"jsonrpc":"2.0","método":"eth_blockNumber","id":83}
pero el puerto 50000 no responde.
Otro detalle que estoy depurando en el oxígeno de Eclipse. No estoy seguro de si puede afectar la interacción.
Otra cosa: el código php anterior funciona bien cuando me conecto a http://truffleframework.com/ganache/ .
He cometido un error. Estas son las opciones que permiten que el cliente php se conecte:
geth --nodiscover --verbosity 9 --networkid 50000 --datadir ./Chain01/ --rpcvhosts "127.0.0.1,::1" --rpc --rpcapi db,eth,net,web3,personal --cache=1024 --rpcport 50000 --rpcaddr 127.0.0.1 --rpccorsdomain "*"
usuario34340
ismael