快速學習-以太坊Geth ( Go-Ethereum )

  • 2020 年 4 月 10 日
  • 筆記

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