1. 程式人生 > >js4eos開發eos及合約,再也不用下載客戶端,編譯等那麼麻煩了

js4eos開發eos及合約,再也不用下載客戶端,編譯等那麼麻煩了

為什麼要寫這篇文章

    EOS最近DAPP不斷增多,活躍度也不錯,但是EOS一直有一個心病,那就是操作門檻高,這也是EOS參與者賬號少的核心原因。

     最近幾個月一直有不少對區塊鏈感興趣的同志加我,對客戶下載,編譯安裝老是出題。除了EOS客戶端對系統版本(Ubuntu的的,centos的的等)要求比較高之外,而且更新也比較快,更新之後變化也不少。不僅是剛入手的,還是對自己也要花不少時間去了解學習。因此就寫了這篇部落格與大家分享

誰適合閱讀本篇部落格

     1.對區塊鏈感興趣,對EOS感興趣

     2.區塊鏈開發者

    3.不想下載客戶端,編譯,同步等那麼麻煩者

   4.eos合約開發者

js4eos能做什麼及介紹

js4eos基本同EOS客戶端一樣,更輕量級,基本能滿足開發者大部分需求。

目前而EOS編譯一向都不是一個簡單的事情,一是不同機器系統可能會出現個人及開發人員都是通過cleos這個客戶端程式和EOS互動,這裡就存在一個問題,要得到cleos就必須編譯EOS。各種問題,二是機器要求較高。同時,EOS各種升級還可能導致編譯錯誤,比如EOS1.2出現過“symbole_core.hpp”找不到的問題。

    js4eos的初衷就是降低使用者EOS使用門檻.js4eos第一版解決了EOS個人使用者的問題,即提供了和cleos一模一樣的命令,只需一條安裝js4eos命令即可擁有cleos的所有功能,無需編譯EOS。但是智慧合約開發人員需要使用eosiocpp等工具,還是需要編譯EOS,因此這次js4eos升級了,支援編譯部署智慧合約,開發人員也不需要編譯EOS了。

js4eos依賴

使用js4eos之前你必須有本地節點開發環境。沒有配置好的,請到官網下載安裝,簡單。

js4eos升級功能

        1)支援EOS智慧合約編譯部署

        2)使用者賬號私鑰加密保護,使用者的私鑰加密後才儲存到檔案裡的,不暴露明文。使用前必須通過解鎖解鎖。

        3)支援一鍵切換網路,在主網,測試網路叢林,麒麟網路,fibos等網路中自由切換。

js4eos config set mainnet / jungle / kylin / fibos

        4)支援水龍頭功能,比如新建測試網路賬號,通過下面命令即可一鍵建立

js4eos faucet annewaccount1 create account success {
    "privatekey":"your privatekey",
    "publickey" : "your publickey",
    "account" : "annewaccount1 "
}

        js4eos進行智慧合約開發實踐

js4eos安裝

npm install -g js4eos

//建立預設錢包,需要記住它輸出的錢包密碼,後面unlock時需要輸入

js4eos wallet create

匯入私鑰

//解鎖錢包,需要輸入前面的錢包密碼

js4eos wallet unlock

jseos wallet import your_private_key

 智慧合約編寫,編譯及部署

mkdir hello

cd hello

在你好目錄下新建HELLO.CPP檔案,通過VIM等編輯器輸入一個招呼合約程式碼

然後編譯

js4eos compile -o hello.wasm hello.cpp

js4eos compile -g hello.abi hello.cpp

 切換到測試網路部署

cd ../
js4eos config set -n jungle
js4eos set contract youraccount hello

 測試

js4eos push action youraccount hi '["youraccount"]' -p youraccount

切換到主網正式部署上線

js4eos config set -n mainnet

js4eos set contract youraccout hello

 中間執行過程除出現如下提示,就說明你沒有匯入私鑰或者解鎖

錯誤:缺少金鑰,請檢查您的keyProvider

 寫這部落格特別感謝@ itleaks的支援

歡迎感興趣的同志加我一起交流