新聞中心
本篇內(nèi)容主要講解“如何使用管理API”,感興趣的朋友不妨來看看。本文介紹的方法操作簡(jiǎn)單快捷,實(shí)用性強(qiáng)。下面就讓小編來帶大家學(xué)習(xí)“如何使用管理API”吧!
站在用戶的角度思考問題,與客戶深入溝通,找到林口網(wǎng)站設(shè)計(jì)與林口網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗(yàn),讓設(shè)計(jì)與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個(gè)性化、用戶體驗(yàn)好的作品,建站類型包括:成都做網(wǎng)站、網(wǎng)站制作、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、申請(qǐng)域名、虛擬空間、企業(yè)郵箱。業(yè)務(wù)覆蓋林口地區(qū)。
啟用管理API
要通過Geth的RPC訪問端結(jié)點(diǎn)提供這些管理API,需要在啟動(dòng)geth時(shí)使用--${interface}api
選項(xiàng),其中${interface}
可以是rpc
,表示HTTP上的端結(jié)點(diǎn),或者是ws
,表示W(wǎng)ebSocket上的端結(jié)點(diǎn),或者ipc
,表示unix套接字或windows命名管道上的端結(jié)點(diǎn)。
例如下面的命令啟用unix套接字和http上的訪問端結(jié)點(diǎn):
~$ geth --ipcapi admin,eth,miner --rpcapi eth,web3 --rpc
在unix套接字上的端結(jié)點(diǎn),提供以下API:admin、miner和官方DApp API即eth。
在http上的端結(jié)點(diǎn),提供以下API:web3、eth
HTTP上的RPC接口必須同時(shí)顯式地使用--rpc
標(biāo)志開啟。
需要注意的是,在HTTP(rpc)或WebSocket(ws)上提供API將允許所有人訪問API,因此請(qǐng)仔細(xì)審查你要提供哪些API服務(wù)。默認(rèn)情況下,Geth在IPC端結(jié)點(diǎn)上提供所有的API,在HTTP和WebSocket接口上僅提供db、eth、net和web3這幾個(gè)API。
要查看提供了哪些API,可以使用modules調(diào)用。例如在unix系統(tǒng)上通過ipc接口調(diào)用:
~$ echo '{"jsonrpc":"2.0","method":"rpc_modules","params":[],"id":1}' | nc -U $datadir/geth.ipc
響應(yīng)結(jié)果將列出所有啟用的API模塊以及其版本號(hào):
{ "id":1, "jsonrpc":"2.0", "result":{ "admin":"1.0", "db":"1.0", "debug":"1.0", "eth":"1.0", "miner":"1.0", "net":"1.0", "personal":"1.0", "shh":"1.0", "txpool":"1.0", "web3":"1.0" } }
使用管理API
Geth提供的管理API與官方DApp API采用相同的規(guī)范,因此可以擴(kuò)展Web3以支持這些額外的API。
不同的函數(shù)被分為多個(gè)邏輯組。下面給出JavaScript控制臺(tái)上的示例,不過很容易將這些示例轉(zhuǎn)換為RPC請(qǐng)求。
例如,在Geth終端啟動(dòng)挖礦:
> miner.start()
通過IPC端結(jié)點(diǎn)啟動(dòng)挖礦:
~$ echo '{"jsonrpc":"2.0","method":"miner_start","params":[],"id":1}' | nc -U $datadir/geth.ipc
通過HTTP端結(jié)點(diǎn)啟動(dòng)挖礦:
~$ curl -X POST --data '{"jsonrpc":"2.0","method":"miner_start","params":[],"id":74}' localhost:8545
可以在啟動(dòng)挖礦時(shí)傳入一個(gè)參數(shù)指定挖礦線程數(shù):
Geth終端啟動(dòng)4個(gè)線程挖礦:
> miner.start(4)
通過IPC端結(jié)點(diǎn)啟動(dòng)4個(gè)線程挖礦:
~$ echo '{"jsonrpc":"2.0","method":"miner_start","params":[4],"id":1}' | nc -U $datadir/geth.ipc
通過HTTP端結(jié)點(diǎn)啟動(dòng)4個(gè)線程挖礦:
~$ curl -X POST --data '{"jsonrpc":"2.0","method":"miner_start","params":[4],"id":74}' localhost:8545
Geth管理API清單
除了官方的DApp API命令空間(eth、shh、web3),Geth提供了以下額外的管理API命名空間:
admin:Geth節(jié)點(diǎn)管理
debug:Geth節(jié)點(diǎn)調(diào)試
miner:挖礦和有向無環(huán)圖(DAG)管理
personal:賬戶管理
txpool:交易池審查
admin
admin
系列API提供了一組非標(biāo)RPC方法,可供調(diào)整Geth實(shí)例的運(yùn)行,包括但不限于網(wǎng)絡(luò)節(jié)點(diǎn)和RPC端結(jié)點(diǎn)的管理。
admin命名空間包括以下RPC調(diào)用:
addPeer:添加遠(yuǎn)程節(jié)點(diǎn)
datadir:獲取鏈庫數(shù)據(jù)目錄
nodeInfo:獲取節(jié)點(diǎn)信息
peers:獲取已連接遠(yuǎn)程節(jié)點(diǎn)信息
setSolc:設(shè)置solidity編譯器路徑
startRPC:?jiǎn)?dòng)HTTP上的RPC服務(wù)
startWS:?jiǎn)?dòng)WebSocket上的RPC服務(wù)
stopRPC:停止HTTP上的RPC服務(wù)
stopWS:停止WebSocket上的RPC服務(wù)
debug
debug
系列API提供了一組非標(biāo)RPC方法,可供監(jiān)視與調(diào)試Geth的運(yùn)行,也可以用來在運(yùn)行時(shí)設(shè)置一些特定的調(diào)試標(biāo)志。
backtraceAt:設(shè)置跟蹤位置
blockProfile:?jiǎn)⒂孟迺r(shí)區(qū)塊性能檢測(cè)
cpuProfile:?jiǎn)⒂孟迺r(shí)CPU性能檢測(cè)
dumpBlock:導(dǎo)出區(qū)塊數(shù)據(jù)
gcStats:獲取垃圾回收統(tǒng)計(jì)信息
getBlockRlp:獲取RPL編碼的區(qū)塊數(shù)據(jù)
goTrace:?jiǎn)⒂孟迺r(shí)go運(yùn)行時(shí)跟蹤
memStats:獲取內(nèi)存統(tǒng)計(jì)信息
seedHash:獲取區(qū)塊種子哈希
setBlockProfileRate:設(shè)置區(qū)塊性能檢測(cè)速率
setHead:設(shè)置本地鏈頭區(qū)塊
stacks:獲取調(diào)用棧
startCPUProfile:?jiǎn)⒂肅PU性能檢測(cè)
startGoTrace:?jiǎn)⒂胓o跟蹤
traceBlock:獲取區(qū)塊操作碼調(diào)用棧
traceBlockByNumber:獲取指定序號(hào)區(qū)塊操作碼調(diào)用棧
traceBlockByHash:獲取指定哈希區(qū)塊操作碼調(diào)用棧
traceBlockFromFile:獲取區(qū)塊文件操作碼調(diào)用棧
traceTransaction:跟蹤交易
verbosity:設(shè)置日志顯示級(jí)別
vmodule:設(shè)置日志可視模式
writeBlockProfile:?jiǎn)⒂脜^(qū)塊性能檢測(cè)
writeMemProfile:?jiǎn)⒂脙?nèi)存性能檢測(cè)
miner
miner
系列的API允許你遠(yuǎn)程控制節(jié)點(diǎn)旳挖礦操作,或者設(shè)置各種與挖礦相關(guān)的參數(shù)。
setExtra:設(shè)置寫入挖礦得到區(qū)塊的額外數(shù)據(jù)
setGasPrice:設(shè)置可接受交易的gas價(jià)格下限
start:?jiǎn)?dòng)挖礦
stop:停止挖礦
getHashRate:獲取哈希生成速率
setEtherbase:設(shè)置挖礦收益賬戶
personal
personal
系列的API管理密鑰庫中的私鑰。
importRawKey:導(dǎo)入私鑰
listAccounts:列出所有賬戶
lockAccount:鎖定賬戶
newAccount:創(chuàng)建新賬戶
unlockAccount:解鎖賬戶
sendTransaction:發(fā)送交易
sign:簽名
ecRecover:提取簽名中的發(fā)起方地址
txpool
txpool
系列的API提供一組非標(biāo)RPC方法,可用來審視包含所有待定及排隊(duì)交易的交易池中的內(nèi)容。
content:獲取池中交易詳情
inspect:獲取池中交易概述
status:獲取交易池狀態(tài)
到此,相信大家對(duì)“如何使用管理API”有了更深的了解,不妨來實(shí)際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!
網(wǎng)站標(biāo)題:如何使用管理API
新聞來源:http://www.ef60e0e.cn/article/pjjjgs.html