Web3js n’a pas pu se connecter

Nbooo

Web3js n’a pas pu se connecter


Je suis assez nouveau dans le développement de l’étherium, donc je me trompe probablement. J’ai une ganache exécutée localement, un contrat y est déployé et je veux créer une petite application pour me familiariser avec le processus. J’ai choisi Vue pour le développement de l’application et actuellement j’ai rencontré un problème de connexion web3 à la ganache.

Dans mon composant racine, je crée une instance de Web3:

 const  etherUri =   'http://127.0.0.1:7545' 

 let  web3 =   new   Web3 ( Web3 . currentProvider ) 

 if   (! web3 . isConnected )   { 
     return   'Unable to connect to ethereum node at '   +  etherUri }   else   { 
     let  accounts =  web3 . eth . accounts return  accounts } 

Ganache est opérationnel, Metamask s’y connecte sans aucun problème. Cependant, en essayant de me connecter depuis mon application, je reçois toujours isConnected = false .

L’application fonctionne en tant que serveur de développement npm run dev . Aucune erreur dans la console.

Je n’utilise pas beaucoup js, donc il y a probablement des erreurs dans ma configuration. Tous les indices seraient très appréciés. Merci d’avance!

Jitendra Kumar. Balla

Mise à jour avec les journaux web3 …

Réponses


 Shawn

Essayez-le

 window . addEventListener ( 'load' ,   function ()   { 

     // Checking if Web3 has been injected by the browser (Mist/MetaMask) 
     if   ( typeof  web3 !==   'undefined' )   { 
         // Use Mist/MetaMask's provider web3js =   new   Web3 ( web3 . currentProvider ); 
     }   else   { console . log ( 'No web3? You should consider trying MetaMask!' ) 
         // fallback - use your fallback strategy (local node / hosted node + in-dapp id mgmt / fail) web3js =   new   Web3 ( new   Web3 . providers . HttpProvider ( "http:// localhost:8545" )); 
     } 

     // Now you can start your app & access web3 freely: startApp () 

 }) 

Web3 – Vérification de l’environnement du navigateur Ethereum

Nbooo

Merci beaucoup, j’y suis finalement parvenu. En fait, mon code fonctionne également, bien que isConnected soit faux, je peux récupérer des comptes et travailler avec des contrats.


 ryanh

Si vous utilisez vue, essayez ceci (similaire à la réponse de shawn):

 const   Web3   =  require ( 'web3' ); 
 let  web3js ; 

 export   default   { created ()   { 
   if   ( typeof  web3 !==   'undefined' )   { web3js =   new   Web3 ( web3 . currentProvider ); 
     // then call functions to determine account and balance 
   }   else   { web3js =   new   Web3 ( new   Web3 . providers . HttpProvider ( provider )); 
     // replace provider with URL of your choice 
   } 
 }, 
 ... 
 }; 

Implémentation de Web3 / Vue sur Github

 

#pas, connecter, n’a, pu, se, web3js

 

yahoo

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *