全部產品
Search
文件中心

:Nodejs SDK使用樣本

更新時間:Jul 06, 2024

本文將描述如何在 BaaS 中運行該樣本程式。

說明

Fabric Nodejs SDK 的樣本程式是來自社區的 marbles,其中包含了一個鏈碼和一個 Web 小遊戲。

安裝 Nodejs 和 NPM

marbles 依賴 Nodejsv8 版本和npm,通過以下命令確認 Nodejs 和 npm 已經安裝成功。

$ node --version
v8.11.2

$ npm --version
5.6.0

下載樣本程式

下載 node-sdk-demo-1.4.5 到任意目錄並解壓縮,得到目錄node-sdk-demo。複製SDK設定檔 connection-profile-standard.json 設定檔到目錄 node-sdk-demo/config 下,最終目錄結構如下:

node sdk layout

開啟並修改設定檔 config/connection-profile-standard.json:將使用者名稱和密碼構造成如下JSON內容,並新增到對應的 certificateAuthorities 段落中。

 "registrar": [
        {
            "enrollId": "user",
            "enrollSecret": "user-secret"
        }
  ],

例如:區塊鏈組織頁面中建立的使用者名稱和密碼為:user/user-secret,且該使用者來自 test10 組織,那麼就將使用者資訊增加到CA: ca1.test10.aliyunbaas.top 下,修改完成後的設定檔如下圖所示:

說明

將JSON檔案內容格式化後更便於編輯,可以使用線上服務:https://jsonlint.com/ 進行格式化。編輯完成後建議使用格式化工具監測JSON格式是否合法。

connection-profile-standard

上傳鏈碼

將檔案 node-sdk-demo/chaincode/marbles_v4.cc 上傳至BaaS並執行個體化,上傳方法可以參考部署鏈碼章節。

運行樣本程式

執行如下命令安裝 marbles 依賴和啟動 marbles 應用:

npm install --registry http://registry.npmmirror.com
gulp marbles_baas

看到有如下輸出時,即表明 marbles 應用已經啟動:

debug: Open your browser to http://localhost:3001 and login to tweak settings for startup

在瀏覽器中開啟地址:http://localhost:3001/ 訪問 marbles 樣本程式。如果要求輸入密碼,輸入 admin 即可。

說明

由於BaaS產生的connection-profile-standard.json是標準的fabric設定檔,未包含chaincode的配置資訊(此配置為 marbles 的個人化配置),所以您可能會看到一些找不到鏈碼的日誌輸出,如’Missing “chaincodeId” parameter’,這些錯誤記錄檔是預期中的,不影響marbles的運行。

接下來將在 marbles 引導頁中配置鏈碼的相關資訊,所以選擇“Guided”模式:

自動跳轉到第三步驟,開始配置Chaincode的資訊:

image.png

  • channel: 填寫上傳 marbles_v4 的通道名,如first-channel

  • chaincode_id: 填寫marbles

  • chaincode_version: 填寫v4

輸入完成後,單擊Try Again,如果成功監測到鏈碼將會看到如下頁面。如果檢查失敗,請再次確認是否已經上傳鏈碼並且鏈碼已經執行個體化。

image.png

此時已經配置完成,關閉彈窗即可開始試用。這是一個在不同使用者之間轉移彩色大理石資產的樣本程式,可以將大理石在不同使用者之間拖動以表示轉移資產。單擊使用者右側的“+”可以在該使用者下新增一個大理石資產。拖動大理石到右上方的垃圾桶即可刪除該資產。

marbles running

更多marbles的資料可以參考社區文檔,更多 Nodejs SDK 的使用說明可以參考社區fabric-sdk-node