Руководство по блокчейну Ethereum с нуля

Учебное пособие по блокчейну Ethereum с нуля является сегодня ведущей темой. Blockchain прямо сейчас является Google одним из самых популярных ключевых слов для поиска, и многие из вас уже слышали о биткойнах или Ethereum. Все эти криптовалюты основаны на технологии, называемой

Что такое Blockchain

Блокчейн — одно из лучших технологических изобретений 21 века. Мозг, стоящий за Blockchain , — это человек или группа людей, известных под псевдонимом Сатоши Накамото. Blockchain позволяет распространять цифровую информацию, но не копировать и децентрализовать. Технология Blockchain создала новый тип Интернета.

Учебное пособие по блокчейну Ethereum

Мы будем использовать блокчейн Ethereum , чтобы начать наше программирование и понять различные библиотеки вокруг него. В этом руководстве мы просто увидим, какой язык мы будем использовать, чтобы начать разработку в блокчейне Ethereum, и как мы можем создать сервер и получать данные на веб-страницу. Мы углубимся в следующие руководства. Это просто базовый обзор Ethereum .

Шаг 1. Установите пакеты.

Сначала мы создадим папку проекта, и в ней мы создадим файл package.json , введя следующую команду. На вашем компьютере должен быть установлен Node.js .

 npm init  

Будет создан файл package.json . Теперь установите следующий пакет.

 npm install --save-dev nodemon 

Когда мы сохраняем файл сервера Node.js, он автоматически перезагружает сервер, поэтому нам не нужно перезапускать сервер вручную.

Теперь мы установим экспресс-узел .js веб-фреймворк , набрав следующую команду.

 npm install --save express 

Хорошо, также создайте одну папку с именем public в корневом каталоге и в этой папке создайте один HTML-файл с именем

Наш файл package.json выглядит так.

 {"name": "ethereum-blockchain", "version": "1.0.0", "description  ":" "," main ":" index.js "," scripts ": {" start ":" nodemon server "}," author ":" KRUNAL LATHIYA "," license ":" ISC "," devDependencies "  : {"nodemon": "^ 1.14.11"}, "dependencies": {"express": "^ 4.16.2"}} 

Теперь создайте сервер .js файл внутри корневой папки и напишите код сервера node.js .

//server.jsconst express = require ('express'); let app = express (); const PORT = 3000; app.get ('/', function (req, res) {  res.sendFile (__ dirname + '/public/index.html');});app.listen(PORT, function () {console.log (' Сервер запущен на порту: ', PORT);}); 

Шаг 2. Измените файл index.html.

Нам нужно сделать запрос ajax на сервер nodej.js для отображения данных на веб-странице. Для отправки запроса ajax мы можем использовать библиотеку jQuery, axios или fetch . Но прямо сейчас мы будем использовать простой javascript для создания и отправки запроса AJAX.

        Руководство по блокчейну Ethereum    

Руководство по Ethereum

function EthereumServer () {alert ('blockchain'); }

Здесь я только что протестировал функцию onclick , и теперь в этой функции нам нужно отправить запрос ajax. на сервер node.js.

        Блокчейн Ethereum  Учебник    

Учебник по Ethereum

функция EthereumServer () {var xhttp = new XMLHttpRequest (); xhttp.onreadystatechange = function () {if (this.readyState == 4 && this.status == 200) {document.getElementById ("цепочка блоков"). innerHTML = this.responseText; }}; xhttp.open («ПОЛУЧИТЬ», «/blockchain», истина); xhttp.send (); }

В файле server.js .

//server.jsconst express =  require ('express'); let app = express (); const PORT = 3000; app.get ('/', функция (req, res) {res.sendFile (__ dirname + '/public/index.html');  }); app.get ('/blockchain', function (req, res) {res.json ('запрос Ethereum получил');}) app.listen (PORT, function () {console.log ('Сервер  запущен на порту: ', PORT);}); 

Шаг 3. Установите стек блокчейна.

Нам нужны две вещи.

  1. testrpc network
  2. web3

Нам нужно установить testrpc глобально в нашей системе. Он будет работать как виртуальная сеть блокчейнов в нашей памяти. Мы можем поиграть с этим, и когда мы будем готовы к производству, тогда мы будем использовать реальный блокчейн Ethereum для разработки децентрализованных приложений. ( DApps )

Нам нужно установить testrpc глобально, поэтому введите следующую команду в своем терминале.

 npm install -g ethereumjs-testrpc 

Теперь после установки пакета вы можете увидеть, как он выглядит, введя следующую команду.

 testrpc 

Здесь вы можете увидеть; у него есть сеть и несколько тестовых учетных записей для работы. Мы получим учетные записи и отобразим их на веб-интерфейсе. Итак, сначала нам нужно связать сеть testrpc с нашим приложением node.js.

Шаг 4 : Установить web3.js

Нам нужно установить версию 1.0.0 файла web3. Итак, введите следующую команду в своем терминале.

 npm install web3 

Теперь включите это в наш server.js file.

//server.jsconst express = require ('express'); let app = express (); const PORT = 3000; const Web3 = require ('web3'); let  web3 = new Web3 (); app.get ('/', function (req, res) {res.sendFile (__ dirname + '/public/index.html');});app.get('/blockchain',  function (req, res) {res.json ('запрос Ethereum получил');}); app.listen (PORT, function () {console.log ('Сервер запущен на порту:', ПОРТ);})  ; 

Мы можем вызывать методы provider в классе web3 следующим образом.

Если мы хотим знать, какие типы провайдеров используются для связи с testrpc, просто console.log провайдеров.

 console.log (Web3.providers  ); 

Это даст нам три типа провайдеров.

  1. IPC
  2. HTTP
  3. WebSock et

Мы будем использовать HTTP Provider, поскольку testrpc использует его и будет работать на порту: 8545

Таким образом, мы можем получить учетные записи из testrpc в приложение node.js.

//server.jsconst Web3 = require ('web3')  ; let web3 = new Web3 (); web3.setProvider (new Web3.providers.HttpProvider ('http://localhost: 8545')); web3.eth.getAccounts (function (err, res) {console.log (err  , res);}); 

Это даст массив учетных записей. Первый аргумент - ошибка. В данном случае это null, а второй аргумент - это массив учетных записей.

Последние штрихи

Наш последний server.js выглядит так. Помните, нам нужно запускать два сервера одновременно.

Если один из них остановлен, вся наша система выйдет из строя. Таким образом, сеть блокчейнов никогда не остановится и будет работать вечно в реальном времени. Так что в будущем в эту сеть будут добавлены блоки. Чем больше блоков добавляется, тем больше безопасность сети.

//server.jsconst express = require ('express'); let app = express (); const PORT = 3000; const  Web3 = require ('web3'); let web3 = new Web3 (); web3.setProvider (new Web3.providers.HttpProvider ('http://localhost: 8545')); app.get ('/', function (  req, res) {res.sendFile (__ dirname + '/public/index.html');});app.get('/blockchain', function (req, res) {web3.eth.getAccounts (function (err,  account) {if (err == null) res.send (JSON.stringify (accounts));});}); app.listen (PORT, function () {console.log ('Сервер запущен на порту:'  , PORT);}); 

Итак, наконец, во внешнем интерфейсе, когда вы нажимаете кнопку, будет отображаться массив учетных записей. Эти учетные записи находятся в сети ethereum, и мы успешно подключили наше приложение node.js к сети ethereum.

Код Github Учебник по блокчейну Ethereum.

Fork Me On Github

Оцените статью
nanomode.ru
Добавить комментарий