您好,登錄后才能下訂單哦!
本篇內容介紹了“JSON RPC API怎么開啟”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
Geth 使用JSON數據格式, JSON-RPC協議作為客戶端和網絡進行交互的方法。 Geth 1.4 的 pub/sub 是實驗性質的, 同樣, Partity 1.6 也是。
使用web3.js和etherenum節點交互時, 遵循一致的RPC協議.
默認的JSON-RPC終端:
Client URL
C++ http://localhost:8545
GO http://localhost:8545
Py http://localhost:4000
Parity http://localhost:8545
Go
可以通過 --rpc 標志開啟HTTP JSON-RPC
geth --rpc
可以通過下面的方式修改默認的端口(8545)和地址(localhost):
geth --rpc --rpcaddr <ip> --rpcport <portnumber>
如果通過瀏覽器訪問RPC, 需要注意跨域問題, 可以通過一下方式:
geth --rpc --rpccorsdomain "http://localhost:3000"
JSON-RPC也可以通過 geth console 開啟, 如下:
admin.startRPC(addr, port)
C++
首先運行aleth啟動節點:
build/aleth/aleth
然后開啟JSON-RPC代理(默認 ~/.ethereum/geth.ipc 和 http://127.0.0.1:8545)
scripts/jsonrpcproxy.py
如果你使用非默認的IPC路徑或者JSON-RPC, 可以指定:
scripts/jsonrpcproxy.py <path to your node's geth.ipc> <URL for this proxy server>
Python
在Python中, JSONRPC服務默認開啟的端口和地址是127.0.0.1:4000
可以通過如下方式配置:
pyethapp -c jsonrpc.listen_port=4002 -c jsonrpc.listen_host=127.0.0.2 run
JSON-RPC 支持情況
cpp-ethereum :JSON-RPC 1.0 JSON-RPC 2.0 Batch requests HTTP IPC
go-ethereum :JSON-RPC 2.0 Batch requests HTTP IPC WS
py-ethereum :JSON-RPC 2.0 Batch requests HTTP
patity :JSON-RPC 2.0 Batch requests HTTP IPC WS
目前, 有2中主要的數據烈性用于JSON, unformatted byte arrays 和 quantities, 他們都是通過hex編碼傳遞的。
下面的方法有一個額外的默認的block參數:
eth_getBalance
eth_getCode
eth_getTransactionCount
eth_getStorageAt
eth_call
當請求訪問erhereum的狀態時, 最后默認的block參數決定了block的高度,該選項可以是一下的取值, defaultBlock:
HEX String 一個integer block 值
String "earliest" 用于earliest/genesis block
String "latest" 用于最近挖出的block
String "pending" 用于pending 的 state/transactions
curl 命令參數中 --data 默認指定數據類型為 application/x-www-form-urlencoded, 如果是其他的格式, 需要手動指定, 例如: -H "application/json" , 最后面必須跟 URL/IP 和 端口, 例如 : curl e.x. 127.0.0.1:8545
“JSON RPC API怎么開啟”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。