成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

如何使用JavaScript和Express創(chuàng)建區(qū)塊鏈

區(qū)塊鏈
有人問我是否可以使用JavaScript來構建BlockChain應用程序,并且肯定有可用的資源來構建這樣的應用程序。本文中向大家介紹其實這并沒有那么復雜。這就像一個普通的項目,但是要遵循更多的規(guī)則。

[[391960]]

本文轉(zhuǎn)載自微信公眾號「區(qū)塊鏈研究實驗室」,作者鏈三豐。轉(zhuǎn)載本文請聯(lián)系區(qū)塊鏈研究實驗室公眾號。   

有人問我是否可以使用JavaScript來構建BlockChain應用程序,并且肯定有可用的資源來構建這樣的應用程序。本文中向大家介紹其實這并沒有那么復雜。這就像一個普通的項目,但是要遵循更多的規(guī)則。

什么是區(qū)塊鏈?

當結合生成有關某些交易或一系列步驟的信息時,區(qū)塊鏈是一組在一起的區(qū)塊鏈。例如,每當您進行任何銀行存款或取款交易時,您都將根據(jù)您上一次存儲在銀行中的金額執(zhí)行一項操作,當任何人在線上進行交易時,它都需要與上一個區(qū)塊有某種關系。

我們將如何理解這種情況并基于此創(chuàng)建應用程序,這是該塊將如何連接的演示。

與流程圖類似,我們將創(chuàng)建一個應用程序來演示相同的內(nèi)容。

讓我們建立一個塊

首先,創(chuàng)建一個區(qū)塊鏈。首先我們需要擁有塊,因此讓我們創(chuàng)建一個名為Block的類。

在第一行,我們正在導入一個包來為我們處理加密。下面的命令將為我們安裝軟件包。

  1. npm i crypto-js 

在構造對象時,這里有一些參數(shù),即索引,時間戳,事務和foreignHash。

  • index 是為塊提供唯一的標識符,并通過索引為我們需要的任何數(shù)據(jù)結構提取塊。
  • timestamp 就是給特定的塊一個創(chuàng)建時間,因為不能更新該塊,所以我們不關心那個的updateAt時間戳。
  • transaction是需要阻止的實際數(shù)據(jù)。例如,員工總數(shù)或總數(shù)或發(fā)件人詳細信息等
  • precedingHash 如圖所示,該字段將負責上一個塊和當前塊之間的連接。
  • hash是將與一起工作的領域,precedingHash以確保我們處在正確的連接軌道上。

最后,有一個函數(shù)computeHash可以使用SHA256算法為我們計算哈希值。該算法將獲取所有數(shù)據(jù),以確保我們生成的哈希碼的唯一性。

現(xiàn)在,我們創(chuàng)建了塊,讓我們轉(zhuǎn)到鏈上。

創(chuàng)建一條鏈

同樣,我們將創(chuàng)建一個鏈類,該鏈類將使用更多方法在其中調(diào)用該塊。這是整個類的代碼。

首先,我們創(chuàng)建了一個空的構造函數(shù)來為我們初始化一些字段,包括id [給標識符],name [給塊一個很酷的名字],blockchain [正在處理所有塊的實際字段],以及最后一個困難[獲得工作證明]。

在進入代碼的另一部分之前,我們將研究成因。對于任何區(qū)塊鏈項目,我們都需要一個創(chuàng)始來用第一個塊初始化鏈,因為第一個塊的行為類似于構建塊,并包含該塊其余部分的第一個哈希,以用作先前的哈希。在這里,我們從上一類創(chuàng)建了一個塊對象,并將其初始值作為參考。

然后,我們創(chuàng)建了一個create()包含少量參數(shù)的name 是通過API命名,id 是從API提供ID并genesis賦予初始成因一個值。

那么我們在obtainLatestBlock()給我們鏈中輸入的最后一個塊,這將幫助我們獲取最后一個塊的哈希,然后將其分配給鏈中的新元素。

最重要的方法是addNewBlock()在我們的鏈中添加一個新的塊,該方法將塊項目作為參數(shù)。首先,我們將獲取區(qū)塊鏈的最新哈希并將其添加到中precedingHash,然后創(chuàng)建一個新哈希并將其分配給哈希,我們可以跳過此步驟,因為我們已經(jīng)將其添加到了Block對象的構造函數(shù)中。但是一旦這種方法運行,它將繼續(xù)將物品推入我們的區(qū)塊鏈生態(tài)系統(tǒng)。

最后checkChainValidity(),我們將不使用它,但有助于驗證該塊。

添加控制器和路由

我們將添加3條路線,創(chuàng)建一個區(qū)塊鏈,

  1. POST - /api/blockchain 

得到區(qū)塊鏈,

  1. GET - /api/blockchain 

將新的孩子添加到鏈中

  1. POST - /api/blockchain/append 

讓我們?yōu)樗鼊?chuàng)建一個控制器文件,

首先,我們將導入我們創(chuàng)建的兩個類Block和BlockChain。然后,我們創(chuàng)建了一個名為FlippingCoin的控制器,您可以根據(jù)需要命名它。但是,關鍵是我們需要關注3種方法:

  • createNewChain
  • appendNewChild
  • getChain

現(xiàn)在,為了簡單起見,我將跳過數(shù)據(jù)存儲部分。除了這3個之外,我們還必須驗證該方法以驗證鏈是否具有要創(chuàng)建的正確數(shù)據(jù)格式。

我們需要調(diào)用相應的方法來使事情工作。

如下所示添加路線

在這里,我們確保將方法映射到正確的路線。

讓我們測試一下

讓我們轉(zhuǎn)到POST路線-/ api / blockchain,

這將根據(jù)我們在創(chuàng)世交易中傳遞的任何數(shù)據(jù)為我們創(chuàng)建一個新的區(qū)塊鏈。

讓我們轉(zhuǎn)到POST路線-/ api / blockchain / append,

在將交易數(shù)據(jù)傳遞到區(qū)塊鏈時,它將添加到鏈中。

最后,我們轉(zhuǎn)到路由GET-/ api / blockchain /檢查數(shù)據(jù)是否已更新。

 

責任編輯:武曉燕 來源: 區(qū)塊鏈研究實驗室
相關推薦

2021-04-09 20:04:34

區(qū)塊鏈Go加密

2019-04-03 10:50:09

Javascript區(qū)塊鏈技術

2020-12-17 08:00:00

區(qū)塊鏈數(shù)據(jù)以太坊

2021-01-25 12:49:14

區(qū)塊鏈物流運輸

2022-01-10 10:56:37

區(qū)塊鏈技術比特幣

2018-11-26 09:00:14

2017-11-16 14:25:04

WOT峰會

2021-09-23 22:40:10

區(qū)塊鏈比特幣技術

2018-04-02 16:35:57

區(qū)塊鏈數(shù)字貨幣比特幣

2018-02-08 17:20:47

2022-08-05 07:43:40

IoNT區(qū)塊鏈中心化

2018-03-27 09:52:30

區(qū)塊鏈數(shù)字貨幣比特幣

2018-03-14 10:15:24

區(qū)塊鏈比特幣貨幣

2018-03-19 09:52:09

區(qū)塊鏈

2021-04-16 20:43:18

Go區(qū)塊鏈編程

2023-06-13 11:49:35

2021-12-13 14:05:27

區(qū)塊鏈金融技術

2018-03-14 11:15:06

2021-05-10 15:09:47

區(qū)塊鏈互聯(lián)網(wǎng)金融

2021-02-20 22:35:17

區(qū)塊鏈比特幣記賬
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 美日韩免费视频 | 欧美一区二区在线 | 91文字幕巨乱亚洲香蕉 | 久久综合九色综合欧美狠狠 | 国产精品精品视频一区二区三区 | 成人午夜精品一区二区三区 | 精品亚洲一区二区三区四区五区 | 秋霞在线一区 | 国产精品久久一区二区三区 | 97视频精品 | 精品久久久久久久久久久 | 欧美中文 | 少妇一区二区三区 | 国产成人一区二 | 国产区第一页 | 人人干97| 麻豆av在线免费观看 | 国产精品免费一区二区三区 | 亚洲天堂免费在线 | 国产午夜在线 | 日韩欧美网 | 在线国产精品一区 | 午夜在线 | 久久天天躁狠狠躁夜夜躁2014 | 欧美综合一区 | 2018天天干天天操 | 久久久91精品国产一区二区三区 | 91久久久精品国产一区二区蜜臀 | 1区2区视频 | 亚洲欧美一区二区三区在线 | 玖玖精品| 久久男女视频 | 久久久久久成人 | 99精品99| 国产精品美女久久久久aⅴ国产馆 | av天天看 | 欧美 日韩 国产 成人 在线 91 | 国产高清视频一区 | 亚洲第一av网站 | 国产综合久久 | 精品中文在线 |