No se puede conectar a ninguna red ethereum usando la clave API

Seguí un tutorial sobre cómo conectar web3 con redes ethereum. Me registré en infura.io y obtengo todas las urls. Pero cuando trato de conectarme a cualquier red, no se conecta. Cuando imprimo el estado de conexión web3, siempre es falso. A continuación se muestra mi código y uso 1.0.0-beta.34 de web3

web3 = new Web3(new Web3.providers.HttpProvider('https://rinkeby.infura.io/v3/MY_API_KEY'));
web3.eth.net.getNetworkType(function(err, res){
     console.log("Network Type: "+res); //Displaying undefined
});

Probé con main net, ropsten y kovan. Todos están mostrando undefined. No sé cuál es el problema aquí. Todos los ejemplos en la web muestran solo estas líneas. ¿Alguien puede ayudarme a resolver esto? Gracias.

v3es un nuevo punto final? mi infura url no tiene v3como la tuya
anteayer solo me registré solo con v3. También probé con la eliminación de v3 pero no funcionó. Si tiene un código de trabajo, ¿puede compartirlo, por favor?
Mi problema es que tengo que conectarlo solo en el nodo js
Si su objetivo es solo obtener el tipo de red, podemos hacerlo de otra manera
Puedo ingresar a la red cuando uso Postman y en curl. Mi problema es que tengo que hacer pagos automáticos que solo pueden ser posibles en backends.
Quiero decir, de acuerdo con el documento web3js.readthedocs.io/en/1.0/web3-eth-net.html#getnetworktypeweb3.eth.net.getNetworkType , no es 100% correcto, entonces necesitamos encontrar otra forma de obtener la correcta.
Ni siquiera puedo conectarme a ningún servicio de infura usando web3. He configurado un nodo privado para probar que funciona perfectamente.
¡Ah bien! entendido tu problema.
parece que te falta web3-net en tus dependencias, echa un vistazo a mi respuesta a continuación :)

Respuestas (1)

También debe agregar el web3-neten sus bibliotecas de dependencias y luego funcionará correctamente

  "dependencies": {
    "web3": "1.0.0-beta.35",
    "web3-net": "1.0.0-beta.36"
  }

Corro en mi local e imprimo correctamente como se muestra a continuación

Network Type: rinkeby

ejemplo de código fuente: https://github.com/hadv/web3-client

const Web3 = require("web3")

web3 = new Web3(new Web3.providers.HttpProvider('https://rinkeby.infura.io/5rhaTHgnqnbTEFj1S1Ya'));
web3.eth.net.getNetworkType(function(err, res){
      console.log("Network Type: "+res);
});
¿Puedes publicar tu código en github? Estoy luchando por más de 4 días.
Incluí eso también. Mi código es const Net = require('web3-net'); net = new Net(Net.givenProvider || ' rinkeby.infura.io/v3/xxxxxxxxx' ); web3 = new Web3(new Web3.providers.HttpProvider(' rinkeby.infura.io/v3/xxxxxxxxx' )); web3.eth.net.getNetworkType(function(err, res){ console.log(err); console.log("Tipo de red: "+res); //Mostrando indefinido }); Todavía no está definido
@ek todavía usa su código, pero edito para poner el código en mi respuesta; necesita actualizar package.jsony ejecutar npm installpara actualizar la lib, entonces estará bien
Puse el código en github, échale un vistazo: github.com/hadv/web3-client
No sé cuál es el problema aquí. Gracias por tu ayuda. Me rindo.