国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

如何寫一個最簡單的區塊鏈小程序“Hello Blockstack”,內附詳細blockstack教程

netScorpion / 1579人閱讀

摘要:這是一個最簡單的區塊鏈小程序的搭建過程,這個程序不需要后端,也不需要用戶進行注冊數據庫。

這是一個最簡單的區塊鏈小程序“Hello Blockstack”的搭建過程,這個程序不需要后端api,也不需要用戶進行注冊數據庫。

在這篇教程中我們會用到下面的工具:

npm to manage dependencies and scripts

browserify to compile node code into browser-ready code

blockstack.js to authenticate the user and work with the user"s identity/profile information

第一步:安裝yeoman

npm install -g yo generator-blockstack

第二步:給程序創建一個新的目錄

mkdir hello-blockstack && cd hello-blockstack
yo blockstack

第三步:運行

npm run start

主要的代碼注釋和理解:

主要的文件是 app.js (在/public 文件夾里面),代碼被包括在監聽事件里面,直到dom內容加載完成

document.addEventListener("DOMContentLoaded", function(event) {
})

在這個里面,我們有一個signin handler來處理用戶的請求和進入

document.getElementById("signin-button").addEventListener("click", function() {
  blockstack.redirectUserToSignIn()
})

我們也有一個signout handler 來進行處理用戶的推出

document.getElementById("signout-button").addEventListener("click", function() {
  blockstack.signUserOut(window.location.origin)
})

下一步,我們有一個函數來顯示用戶的簡歷

function showProfile(profile) {
  var person = new blockstack.Person(profile)
  document.getElementById("heading-name").innerHTML = person.name()
  document.getElementById("avatar-image").setAttribute("src", person.avatarUrl())
  document.getElementById("section-1").style.display = "none"
  document.getElementById("section-2").style.display = "block"
}

有三種狀態可以讓用戶登錄

The user is already signed in
The user has a sign in request that is pending
The user is signed out

代碼表達方式

if (blockstack.isUserSignedIn()) {
  // Show the user"s profile
} else if (blockstack.isSignInPending()) {
  // Sign the user in
} else {
  // Do nothing
}

在用戶請求的過程中

if (blockstack.isUserSignedIn()) {
  var profile = blockstack.loadUserData().profile
  showProfile(profile)
} else if (blockstack.isSignInPending()) {
  blockstack.handlePendingSignIn().then(function(userData) {
    window.location = window.location.origin
  })
}

程序顯示樣式的控制文件:
控制這個程序顯示樣式的文件是 (/public/manifest.json)

{
  "name": "Hello, Blockstack",
  "start_url": "localhost:5000",
  "description": "A simple demo of Blockstack Auth",
  "icons": [{
    "src": "https://helloblockstack.com/icon-192x192.png",
    "sizes": "192x192",
    "type": "image/png"
  }]
}

源代碼實現:

git init
git add . && git commit -m "first commit"

然后去github添加一個新的repo
https://github.com/new

git remote add origin git@github.com:YOUR_USERNAME_HERE/hello-blockstack.git
git push origin master

加入到blockstack社區中來:https://contribute.blockstack...
下載blockstack:https://blockstack.org/install

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/24051.html

相關文章

  • 如何blockstack一個區塊鏈“微博”程序

    摘要:工具教程在本教程中,我們將使用存儲系統構建一個區塊鏈微博應用程序,從而使用戶提交的文字和圖片沒有發布到中心服務器中,而是在自己的本地電腦。 Blockstack.js 工具教程 在本教程中,我們將使用Gaia存儲系統構建一個區塊鏈微博應用程序,從而使用戶提交的文字和圖片沒有發布到中心服務器中,而是在自己的本地電腦。此應用程序將是一個完全分散且無需服務器的access . js應用程序。...

    I_Am 評論0 收藏0
  • Blockstack正在測試區塊鏈網絡Stacks testnet

    摘要:程序員們在這個測試網絡上可以嘗試發送和接收使用購買域名和命名空間注冊子域名使用我們的命令行工具是由功能完備的核心節點組成的,它允許您在區塊鏈網絡上上執行所有相同的操作。 showImg(https://segmentfault.com/img/bV92g9?w=1000&h=576); developers can experiment with: Sending and receiv...

    Gemini 評論0 收藏0
  • 區塊鏈發展史

    摘要:秘猿科技區塊鏈小課堂第期點擊關注秘猿科技在思否的技術社區吧區塊鏈發展史發展和成果眾所周知,區塊鏈發源于比特幣這個項目,也可以說比特幣是區塊鏈的第一個應用。 區塊鏈技術并不是一項憑空出世的神奇技術,而是站在前人幾百年的研究基礎之上,將多學科進行融合發展而成的一項技術。為了讓大家能夠明白區塊鏈技術,到底是對哪些傳統技術的融合和發展,秘猿科技區塊鏈小課堂給大家帶來了通俗易懂的第二篇文章,訴...

    kyanag 評論0 收藏0
  • 區塊鏈開發中使用流行編程語言

    摘要:我們目前正處于一個新興的區塊鏈開發行業中。,一種在以太坊開發人員中流行的新的簡單編程語言,因為它是用于開發以太坊智能合約的語言。它是全球至少萬開發人員使用的世界上最流行的編程語言之一。以太坊,主要是針對工程師使用進行區塊鏈以太坊開發的詳解。 我們目前正處于一個新興的區塊鏈開發行業中。區塊鏈技術處于初期階段,然而這種顛覆性技術已經成功地風靡全球,并且最近經歷了一場與眾不同的繁榮。由于許多...

    2shou 評論0 收藏0
  • 追求極致設計理念!用 RISC-V 從頭設計 CKB 虛擬機

    摘要:目前,比特幣使用的是來進行交易簽名,并且在共識協議中使用了哈希算法。盡管的實現提供的是最流行的加密算法,但我們鼓勵社區提供更優化的加密算法實現以減少運行時開銷。 Nervos 底層公鏈 CKB 的虛擬機(CKB-VM)是基于 RISC-V 指令集打造的區塊鏈虛擬機。在上一堂分享中,我們簡單介紹了區塊鏈虛擬機,以及我們理想中的區塊鏈虛擬機的樣子。在本篇文章中,CKB-VM 設計者將詳細的...

    he_xd 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<