Problemas del lado del servidor Web3 para conectarse con ganache

Necesito crear un servidor en nodejs que creará transacciones en blockchain y tengo problemas para conectar mi aplicación nodejs con ganache. Mira mi código:

const Web3 = require('web3');
var web3 = new Web3.providers.HttpProvider('http://localhost:7545'); // ganache address
console.log(web3.eth.accounts); // should print 10 accounts but its error like eth is undefined

En mis dependencias

"web3": "^0.20.2"

Usando este código en trabajos del lado del cliente, ¿qué me estoy perdiendo?

¿Se está ejecutando ganache en el servidor?
el servidor es mi computadora portátil, así que sí
Probablemente no ayude, pero intentahttp://127.0.0.1:7545
nada cambió, me pregunto si mi versión web3 está bien.
yo tengo el mismo problema, por favor ayuda ! [ingrese la descripción de la imagen aquí ] ( i.stack.imgur.com/86ACs.png )
si no encontró una solución para su problema en stackexchange, sería mejor hacer una pregunta por separado con más detalles.
Esto realmente no responde la pregunta. Si tiene una pregunta diferente, puede hacerla haciendo clic en Preguntar . También puede agregar una recompensa para llamar más la atención sobre esta pregunta una vez que tenga suficiente reputación . - De la revisión
Una posible solución que trabajé en mi propio SO que puede o puede estar relacionada con esta pregunta.

Respuestas (1)

Esta línea está mal:

var web3 = new Web3.providers.HttpProvider('http://localhost:7545');

Está instanciando un proveedor en lugar de instanciar Web3. Debería ser esto:

var web3 = new Web3(new Web3.providers.HttpProvider('http://localhost:7545'));