溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

JSON RPC API怎么開啟

發(fā)布時間:2022-01-05 16:50:12 來源:億速云 閱讀:180 作者:iii 欄目:互聯(lián)網(wǎng)科技

本篇內(nèi)容介紹了“JSON RPC API怎么開啟”的有關(guān)知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!

Geth 使用JSON數(shù)據(jù)格式, JSON-RPC協(xié)議作為客戶端和網(wǎng)絡(luò)進(jìn)行交互的方法。 Geth 1.4 的 pub/sub 是實驗性質(zhì)的, 同樣, Partity 1.6 也是。

JavaScript API

使用web3.js和etherenum節(jié)點交互時, 遵循一致的RPC協(xié)議.

JSON-RPC Endpoint

默認(rèn)的JSON-RPC終端:

Client URL

C++ http://localhost:8545

GO http://localhost:8545

Py http://localhost:4000

Parity http://localhost:8545

Go

可以通過 --rpc 標(biāo)志開啟HTTP JSON-RPC

geth --rpc

可以通過下面的方式修改默認(rèn)的端口(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啟動節(jié)點:

build/aleth/aleth

然后開啟JSON-RPC代理(默認(rèn) ~/.ethereum/geth.ipc 和 http://127.0.0.1:8545)

scripts/jsonrpcproxy.py

如果你使用非默認(rèn)的IPC路徑或者JSON-RPC, 可以指定:

scripts/jsonrpcproxy.py  <path to your node's geth.ipc>  <URL for this proxy server>

Python

在Python中, JSONRPC服務(wù)默認(rèn)開啟的端口和地址是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

十六進(jìn)制值編碼 HEX value encoding

目前, 有2中主要的數(shù)據(jù)烈性用于JSON, unformatted byte arrays 和 quantities, 他們都是通過hex編碼傳遞的。

默認(rèn)block 參數(shù)

下面的方法有一個額外的默認(rèn)的block參數(shù):

  • eth_getBalance

  • eth_getCode

  • eth_getTransactionCount

  • eth_getStorageAt

  • eth_call

當(dāng)請求訪問erhereum的狀態(tài)時, 最后默認(rèn)的block參數(shù)決定了block的高度,該選項可以是一下的取值, defaultBlock:

  • HEX String 一個integer block 值

  • String "earliest" 用于earliest/genesis block

  • String "latest" 用于最近挖出的block

  • String "pending" 用于pending 的 state/transactions

Curl 例子解釋

curl 命令參數(shù)中 --data 默認(rèn)指定數(shù)據(jù)類型為 application/x-www-form-urlencoded, 如果是其他的格式, 需要手動指定, 例如: -H "application/json" , 最后面必須跟 URL/IP 和 端口, 例如 : curl e.x. 127.0.0.1:8545

“JSON RPC API怎么開啟”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識可以關(guān)注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實用文章!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI