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的支援
歡迎感興趣的同志加我一起交流