Web3.js – Error: Provider Not Set or Invalid

metamasknodejstruffleweb3js

I'm not able to connect metamask with nodejs.

var Web3        = require('web3');
var web3        = new Web3();

if (typeof web3 !== 'undefined') {
// Use Mist/MetaMask's provider
 web3 = new Web3(web3.currentProvider);
 } else {
console.log('No web3? You should consider trying MetaMask!');
  }

It is showing the error :

Error: Provider not set or invalid

Best Answer

I think the second line of your code is wrong. Try to remove this:

var web3        = new Web3();

as per doc this is the right way to create an instance of web3

if (typeof web3 !== 'undefined') {
  web3 = new Web3(web3.currentProvider);
} else {
  // set the provider you want from Web3.providers
  web3 = new Web3(new Web3.providers.HttpProvider("http://localhost:8545"));
}

https://github.com/ethereum/wiki/wiki/JavaScript-API#adding-web3

Related Topic