para usar web3.js es necesario instalar geth en su sistema

para usar web3.js es necesario instalar geth en su sistema o se conecta automáticamente con geth o ethereum blockchain?

var web3 = nuevo Web3(nuevo Web3.proveedores.HttpProvider(' http://localhost:8545 '))

aquí conectamos algo. En este comando nos estamos conectando a qué? ¿Nos estamos conectando a la cadena pública de ethereum o algo más?

Respuestas (3)

No, no lo es. Puede probar web3 con, por ejemplo , testrpc , que también se ejecuta en el puerto 8545 para que pueda conectarse de la misma manera. Hace que las pruebas sean mucho más rápidas, livianas y económicas (no hay dinero real para gasolina). Si desea trabajar con alguna cadena de bloques pública (cadena principal o red de prueba), podría considerar infura , ¡ pero tenga cuidado con la centralización que quizás no desee!

web3.jsno tiene acceso directo a la cadena de bloques, siempre depende de algún cliente para interactuar con la red Ethereum. gethes una de tantas opciones.

Conectando

Al ejecutar web3.js, aquí hay algunas opciones para conectarse:

  1. Mist browser : ¡un web3objeto ya está incorporado y conectado! (Mist ejecuta un cliente para ti, debajo del capó)
  2. Navegadores web normales: use la extensión Metamask para parchear un web3objeto. Metamask elige a qué cliente conectarse.
  3. Uso local: conéctese a un cliente local que esté ejecutando llamandoweb3.setProvider()

Opciones de cliente

gethes una de las muchas opciones para los clientes locales. Algunos otros son parity y cpp-ethereum . Los nodos alojados de forma remota como Infura ofrecen acceso a la privacidad y el control a un cierto costo. No he visto mucho uso de él, pero EthereumJ también podría ser de interés. Obtenga un poco más de información y vea más clientes esotéricos en ethdocs .

NO, Web3es un conector entre su aplicación y el cliente Ethereum. Puede ejecutar ganache-clio gethcomo cliente de prueba en localhost o puede conectar su aplicación a un nodo en línea como infurausar web3.

En su código de ejemplo, escucha al cliente local que se ejecuta en el puerto 8545. Puede ser ganachered de prueba o gethcliente.