您好,登錄后才能下訂單哦!
這篇文章主要介紹“JSON RPC中的數據類型有哪些”,在日常操作中,相信很多人在JSON RPC中的數據類型有哪些問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”JSON RPC中的數據類型有哪些”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
JSON是輕量級的數據交換格式。它可以表示數值、字符串、有序值序列以及名/值對集合。
JSON-RPC是無狀態的輕量級遠程過程調用(RPC)協議。JSON-RPC規范定義了數據結構以及其處理規則,它是傳輸無關的,因此可以應用于socket、HTTP、WebSocket或其他消息傳輸環境。JSON-RPC采用JSON(RFC 4627)作為數據格式。
HTTP:在8545端口監聽
WebSocket:在8546端口監聽
IPC Socket:監聽路徑為$BASE/jsonrpc.ipc
,在linux上其默認值為~/.local/share/io.parity.ethereum/jsonrpc.ipc
。
有幾種利用JSON傳遞的數據類型。由于JavaScript/JSON沒有原生的字節數組和大數類型,這兩種類型是特別針對以太坊API而設計的,都是用16進制編碼,但是有不同的格式化要求。
當編碼數量類型 (整數或數值)時,編碼為最緊湊的16進制并使用0x
前綴,緊湊的意思是0
應當編碼為0x0
而不是0x00
。示例如下:
0x41 :十進制的65
0x400 :十進制的1024
0x:錯誤!應當至少有一位數字,例如0x0
0x0400:錯誤!不需要前導0
ff:錯誤!必須使用前綴0x
當編碼未格式化的數據(字節數組、賬戶地址、哈希、字節碼數組)時,編碼為16進制,使用前綴0x
,每字節使用兩個16進制數字表示。例如:
0x41:表示“A”,1個字節
0x004200 :表示“\0B\0”,3個字節
0x:表示“”,零字節
0xf0f0f:錯誤!必須為偶數長度
004200:錯誤!必須使用前綴0x
除了數據和數量,也有標準的JSON類型,我們稱之為STR(字符串)和INT(整數)。
默認情況下,并非所有的API都會暴露出來。但是你可以在啟動Parity時使用--jsonrpc-apis APIS
來啟用相應的API。
APIS
時以逗號區隔的API名稱列表。可用的名稱包括:all, safe, web3, eth, net, personal, parity, parity_set, traces, rpc, parity_accounts, signer。你可以使用-
前綴禁用某個特定的api,例如:all,-personal
。
默認開啟的api為: web3,eth,pubsub,net,parity,parity_pubsub,traces,rpc,secretstore。
賬戶管理基礎API
personal_ecRecover - 從簽名恢復地址
personal_listAccounts - 列舉所有賬戶
personal_newAccount - 創建新賬戶
personal_sendTransaction - 發送普通交易
personal_sign - 計算以太坊簽名
personal_sign191 - 計算EIP191兼容簽名
personal_signTransaction - 交易簽名
personal_signTypedData - 類型數據簽名
personal_unlockAccount - 解鎖賬戶
Parity擴展API
parity_allTransactionHashes - 獲取交易池交易哈希
parity_allTransactions - 獲取交易池交易
parity_call - 串行調用多個交易
parity_cidV0 - 計算內容ID
parity_composeTransaction - 補全交易字段
parity_consensusCapability - 查詢共識能力
parity_decryptMessage - 解密消息
parity_encryptMessage - 加密消息
parity_futureTransactions
parity_getBlockHeaderByNumber - 查詢區塊頭
parity_getBlockReceipts - 獲取區塊全部交易收據
parity_hardwarePinMatrixAck - 解鎖硬件錢包
parity_listOpenedVaults - 列舉已打開保險庫
parity_listStorageKeys - 列舉存儲密鑰
parity_listVaults - 列舉全部保險庫
parity_localTransactions - 列舉本地交易
parity_lockedHardwareAccountsInfo - 列舉加鎖硬件錢包
parity_releasesInfo - 獲取發行信息
parity_signMessage - 計算消息簽名
parity_submitWorkDetail - 提交POW方案
parity_verifySignature - 驗證簽名
parity_versionInfo - 獲取版本信息
保險庫管理API
parity_changeVault - 改變賬戶的保險庫
parity_changeVaultPassword - 修改保險庫密碼
parity_closeVault - 關閉保險庫
parity_getVaultMeta - 獲取保險庫元數據
parity_newVault - 創建保險庫
parity_openVault - 打開保險庫
parity_setVaultMeta - 設置保險庫元數據
簽名API
parity_accountsInfo - 獲取賬戶描述元信息
parity_checkRequest - 檢查請求是否成功
parity_defaultAccount - 獲取默認賬戶
parity_generateSecretPhrase - 創建助記詞
parity_hardwareAccountsInfo - 獲取硬件錢包賬戶信息
parity_listAccounts - 獲取全部地址
parity_phraseToAddress - 將助記詞轉換為以太坊地址
parity_postSign - 請求簽名指定的消息
parity_postTransaction - 發送交易
挖礦相關API
parity_defaultExtraData - 獲取默認的額外數據
parity_extraData - 獲取當前的額外數據
parity_gasCeilTarget - 獲取當前的gas上限目標
parity_gasFloorTarget - 獲取當前的gas下限目標
parity_minGasPrice - 獲取當前的最低gas價格
parity_transactionsLimit - 獲取交易隊列的當前限額
開發相關API
parity_devLogs - 獲取開發日志
parity_devLogsLevels - 獲取當前日志級別
網絡信息API
parity_chain - 獲取接入的鏈名稱
parity_chainStatus - 獲取區塊鏈同步狀態
parity_gasPriceHistogram - 獲取gas價格直方圖
parity_netChain - 獲取鏈名[已棄用]
parity_netPeers - 獲取已連接的對等節點
parity_netPort - 獲取監聽端口
parity_nextNonce - 獲取下一個可用nonce值
parity_pendingTransactions - 獲取待定交易清單
parity_pendingTransactionsStats - 獲取待定交易的統計
parity_registryAddress - 獲取注冊中心的地址
parity_removeTransaction - 刪除本地交易
parity_rpcSettings - 獲取當前的RPC API設置
parity_unsignedTransactionsCount - 獲取未簽名交易數量
節點設置API
parity_enode - 獲取節點enode地址
parity_mode - 獲取節點運行模式
parity_nodeKind - 獲取節點類型
parity_nodeName - 獲取節點名稱
parity_wsUrl - 獲取websocket服務地址
Parity賬戶管理擴展API
parity_allAccountsInfo - 獲取全部賬戶描述信息
parity_changePassword - 修改賬戶密碼
parity_deriveAddressHash - 指定哈希派生新地址
parity_deriveAddressIndex - 指定索引派生新地址
parity_exportAccount - 導出賬戶
parity_importGethAccounts - 導入Geth賬戶
parity_killAccount - 刪除賬戶
parity_listGethAccounts - 列舉Geth賬戶
parity_newAccountFromPhrase - 用助記詞創建新賬戶
parity_newAccountFromSecret - 用私鑰創建新賬戶
parity_newAccountFromWallet - 用錢包對象創建新賬戶
parity_removeAddress - 刪除地址
parity_setAccountMeta - 設置賬戶元數據
parity_setAccountName - 設置賬戶名稱
parity_testPassword - 測試賬戶密碼
Parity配置API
parity_acceptNonReservedPeers - 允許接受非保留節點
parity_addReservedPeer - 添加保留節點
parity_dropNonReservedPeers - 禁止接受非保留節點
parity_executeUpgrade - 升級軟件
parity_hashContent - 計算指定內容的哈希
parity_removeReservedPeer - 刪除保留節點
parity_setAuthor - 設置幣基地址
parity_setChain - 設置鏈規范
parity_setEngineSigner - 設置共識簽名賬戶
parity_setExtraData - 設置新塊是否成功
parity_setGasCeilTarget - 設置出塊gas上限
parity_setGasFloorTarget - 設置出塊gas下限
parity_setMaxTransactionGas - 設置交易最大gas
parity_setMinGasPrice - 設置最低gas價格
parity_setMode - 設置運行模式
parity_setTransactionsLimit
parity_upgradeReady - 查詢可升級版本
Pairty訂閱API
parity_subscribe
parity_unsubscribe
簽名API
signer_confirmRequest - 確認交易請求
signer_confirmRequestRaw - 確認已簽名請求
signer_confirmRequestWithToken - 使用令牌確認請求
signer_generateAuthorizationToken - 生成授權令牌
signer_generateWebProxyAccessToken - 生成web代理訪問令牌
signer_rejectRequest - 駁回交易請求
signer_requestsToConfirm - 等待確認的請求
signer_subscribePending - 訂閱待定交易
signer_unsubscribePending - 取消待定交易訂閱
跟蹤調試API
trace API概述
trace_call - 跟蹤調用
trace_callMany - 跟蹤多個調用
trace_rawTransaction - 跟蹤裸交易調用
trace_replayBlockTransactions - 跟蹤重放的區塊交易
trace_replayTransaction - 跟蹤重放的交易
trace_block - 返回區塊跟蹤結果
trace_filter - 過濾跟蹤結果
trace_get - 提取指定位置的跟蹤結果
trace_transaction - 提取指定交易的跟蹤結果
Whisper擴展API
shh_info
shh_newKeyPair
shh_addPrivateKey
shh_newSymKey
shh_addSymKey
shh_getPublicKey
shh_getPrivateKey
shh_getSymKey
shh_deleteKey
shh_post
shh_newMessageFilter
shh_getFilterMessages
shh_deleteMessageFilter
shh_subscribe
shh_unsubscribe
密鑰庫API
secretstore API概述
secretstore_decrypt - 解密文檔
secretstore_encrypt - 加密文檔
secretstore_generateDocumentKey - 生成文檔密鑰
secretstore_serversSetHash - 計算節點集哈希
secretstore_shadowDecrypt - 影子解密
secretstore_signRawHash - 裸哈希簽名
到此,關于“JSON RPC中的數據類型有哪些”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。