您好,登錄后才能下訂單哦!
geth, web3.js, JSON RPC, truffle之間的關(guān)系是什么,針對這個問題,這篇文章詳細介紹了相對應(yīng)的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
1. geth
geth的全稱是Go-ethereum,是一個以太坊客戶端,用go語言編寫。它可以通過交互式控制臺啟動,該控制臺提供了一個JavaScript運行時環(huán)境。內(nèi)置了eth, web3.js等對象(來自書籍《區(qū)塊鏈開發(fā)實戰(zhàn):以太坊關(guān)鍵技術(shù)與案例分析》)
2. web3.js
web3.js封裝了JSON RPC,可以和任何暴露了RPC接口的以太坊區(qū)塊鏈節(jié)點鏈接。
ABI是Application Binary Interface的縮寫,字面意思 應(yīng)用二進制接口,可以通俗的理解為合約的接口說明。當(dāng)合約被編譯后,那么它的abi也就確定了
Address 智能合約的地址 (由以太坊內(nèi)部提供),以太坊地址的長度,大小20個字節(jié),160位,所以可以用一個uint160
編碼。地址是所有合約的基礎(chǔ),所有的合約都會繼承地址對象,也可以隨時將一個地址串,得到對應(yīng)的代碼進行調(diào)用。
3. JSON RPC
JSON RPC可以和任何暴露了RPC接口的以太坊區(qū)塊鏈節(jié)點鏈接,操作比web3.js更繁瑣,需要配合curl使用,命令寫起來比較長,如:
curl -X POST -H “Content-Type”:application/json –data ‘{“jsonrpc”:”2.0″, “method”:”eth_getBalance”,”params”:[“0x75b567b6d35c56a4e25c217efe892cfbb53d3d46″,”latest”],”id”:1}’ localhost:3000
4. truffle
truffle是以太坊開發(fā)智能合約的框架,可以快速構(gòu)建項目并部署智能合約到區(qū)塊鏈。幾個步驟就可以創(chuàng)建、編譯和部署項目:
truffle init
truffle compile
truffle migrate
關(guān)于geth, web3.js, JSON RPC, truffle之間的關(guān)系是什么問題的解答就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關(guān)注億速云行業(yè)資訊頻道了解更多相關(guān)知識。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。