快速學習-以太坊Geth ( Go-Ethereum )
Geth ( Go-Ethereum )
- Geth是由以太坊基金會積極開發的 Go 語言實現,因此被認為是以太坊客戶端的「官方」實現。
- 通常,每個基於以太坊的區塊鏈都有自己的Geth實現。
- 以太坊的 Geth github 倉庫鏈接: https://github.com/ethereum/go-ethereum
JSON-RPC
- 以太坊客戶端提供了API 和一組遠程調用(RPC)命令,這些命令被編碼為 JSON。這被稱為 JSON-RPC API。本質上,JSON-RPC API 就是一個介面,允許我們編寫的程式使用以太坊客戶端作為網關,訪問以太坊網路和鏈上數據。
- 通常,RPC 介面作為一個 HTTP 服務,埠設定為 8545。出於安全原因,默認情況下,它僅限於接受來自 localhost 的連接。
- 要訪問JSON-RPC API,我們可以使用程式語言編寫的專用庫,例 如JavaScript的 web3.js。 • 或者也可以手動構建HTTP請求並發送/接收JSON編碼的請求,如:
$ curl -X POST -H "Content-Type: application/json" --data '{"jsonrpc":"2.0","method":"web3_clientVersion","params":[],"id":1 }' http://localhost:8545