метамаска web3 не определена - PullRequest
0 голосов
/ 27 июня 2018

Я создал eth-узел на локальном ПК. Код не проблема. Но когда я вышел из eth узла, и используйте метамаску для запуска кода, web3 не определено.

Можете ли вы сказать мне, как решить проблему?

<!DOCTYPE html>
<html>
<head>
<title>Using web3 API with MetaMask</title>
<script src="https://cdn.jsdelivr.net/gh/ethereum/web3.js/dist/web3.min.js"></script>
<!-- for ecrecover -->
<script type="text/javascript" src="D:\blockchain\test\ethereum\ethereumjs-util.js"></script>
<script>
window.addEventListener('load', function() {
  // Checking if Web3 has been injected by the browser (Mist/MetaMask)
  if (typeof web3 !== 'undefined') {
    // Use Mist/MetaMask's provider
    window.web3 = new Web3(web3.currentProvider);
  } else {
    console.log('No web3? You should consider trying MetaMask!')
    window.web3 = new Web3(new Web3.providers.HttpProvider("http://localhost:8545"));
  }
</script>
</head>
</html>

Ответы [ 2 ]

0 голосов
/ 08 октября 2018

Когда ваш узел ethereum не работает, ваш сайт не может получить информацию от вашего узла, вы можете переключиться на поставщика infura.io

window.web3 = new Web3(new Web3.providers.HttpProvider("https://mainnet.infura.io"))
0 голосов
/ 08 октября 2018

Вы пытаетесь служить с file://? Если так, это не будет работать. MetaMask отказывается обслуживать URL-адреса файловой системы. Подайте заявку через веб-сервер. Подойдет одна строка, такая как python -m SimpleHTTPServer 8000.

...