EVM
Dưới đây là danh sách các phương thức JSON-RPC được hỗ trợ trên CrossFi, sắp xếp theo không gian tên.
Giải thích về ví dụ Curl
Các tùy chọn curl dưới đây có thể trả lại phản hồi nơi node phàn nàn về loại nội dung, điều này là do tùy chọn --data
đặt loại nội dung thành application/x-www-form-urlencoded
. Nếu node của bạn có phàn nàn, hãy tự đặt tiêu đề bằng cách đặt -H "Content-Type: application/json"
vào đầu cuộc gọi.
Các ví dụ không bao gồm URL/IP & port phải là đối số cuối cùng được cung cấp cho curl vd. 127.0.0.1:8545
Điểm cuối
Phương thức | Không gian tên | Đã thực hiện | Công khai | Ghi chú |
---|---|---|---|---|
web3_clientVersion | Web3 | ✔ | ✔ | |
web3_sha3 | Web3 | ✔ | ✔ | |
net_version | Net | ✔ | ✔ | |
net_peerCount | Net | ✔ | ✔ | |
net_listening | Net | ✔ | ✔ | |
eth_protocolVersion | Eth | ✔ | ✔ | |
eth_syncing | Eth | ✔ | ✔ | |
eth_gasPrice | Eth | ✔ | ✔ | |
eth_accounts | Eth | ✔ | ✔ | |
eth_blockNumber | Eth | ✔ | ✔ | |
eth_getBalance | Eth | ✔ | ✔ | |
eth_getStorageAt | Eth | ✔ | ✔ | |
eth_getTransactionCount | Eth | ✔ | ✔ | |
eth_getBlockTransactionCountByNumber | Eth | ✔ | ✔ | |
eth_getBlockTransactionCountByHash | Eth | ✔ | ✔ | |
eth_getCode | Eth | ✔ | ✔ | |
eth_sign | Eth | ✔ | ✔ | |
eth_sendTransaction | Eth | ✔ | ✔ | |
eth_sendRawTransaction | Eth | ✔ | ✔ | |
eth_call | Eth | ✔ | ✔ | |
eth_estimateGas | Eth | ✔ | ✔ | |
eth_getBlockByNumber | Eth | ✔ | ✔ | |
eth_getBlockByHash | Eth | ✔ | ✔ | |
eth_getTransactionByHash | Eth | ✔ | ✔ | |
eth_getTransactionByBlockHashAndIndex | Eth | ✔ | ✔ | |
eth_getTransactionReceipt | Eth | ✔ | ✔ | |
eth_newFilter | Eth | ✔ | ✔ | |
eth_newBlockFilter | Eth | ✔ | ✔ | |
eth_newPendingTransactionFilter | Eth | ✔ | ✔ | |
eth_uninstallFilter | Eth | ✔ | ✔ | |
eth_getFilterChanges | Eth | ✔ | ✔ | |
eth_getFilterLogs | Eth | ✔ | ✔ | |
eth_getLogs | Eth | ✔ | ✔ | |
eth_getTransactionbyBlockNumberAndIndex | Eth | ✔ | ||
eth_getWork | Eth | N/A | ✔ | Chỉ PoW |
eth_submitWork | Eth | N/A | ✔ | Chỉ PoW |
eth_submitHashrate | Eth | |||
eth_getCompilers | Eth | |||
eth_compileLLL | Eth | |||
eth_compileSolidity | Eth | |||
eth_compileSerpent | Eth | |||
eth_signTransaction | Eth | |||
eth_mining | Eth | ❌ | ||
eth_coinbase | Eth | ✔ | ||
eth_hashrate | Eth | N/A | ❌ | Chỉ dành cho PoW |
eth_getUncleCountByBlockHash | Eth | N/A | Chỉ dành cho PoW | |
eth_getUncleCountByBlockNumber | Eth | N/A | Chỉ dành cho PoW | |
eth_getUncleByBlockHashAndIndex | Eth | N/A | Chỉ dành cho PoW | |
eth_getUncleByBlockNumberAndIndex | Eth | N/A | Chỉ dành cho PoW | |
eth_getProof | Eth | ✔ | ||
eth_subscribe | Websocket | ✔ | ||
eth_unsubscribe | Websocket | ✔ | ||
personal_importRawKey | Cá nhân | ✔ | ❌ | |
personal_listAccounts | Cá nhân | ✔ | ❌ | |
personal_lockAccount | Cá nhân | ✔ | ❌ | |
personal_newAccount | Cá nhân | ✔ | ❌ | |
personal_unlockAccount | Cá nhân | ✔ | ❌ | |
personal_sendTransaction | Cá nhân | ✔ | ❌ | |
personal_sign | Cá nhân | ✔ | ❌ | |
personal_ecRecover | Cá nhân | ✔ | ❌ | |
personal_initializeWallet | Cá nhân | ✔ | ❌ | |
personal_unpair | Cá nhân | ✔ | ❌ | |
db_putString | CSDL | |||
db_getString | CSDL | |||
db_putHex | CSDL | |||
db_getHex | CSDL | |||
shh_post | SSH | |||
shh_version | SSH | |||
shh_newIdentity | SSH | |||
shh_hasIdentity | SSH | |||
shh_newGroup | SSH | |||
shh_addToGroup | SSH | |||
shh_newFilter | SSH | |||
shh_uninstallFilter | SSH | |||
shh_getFilterChanges | SSH | |||
shh_getMessages | SSH | |||
admin_addPeer | Quản trị | ❌ | ||
admin_datadir | Quản trị | ❌ | ||
admin_nodeInfo | Quản trị | ❌ | ||
admin_peers | Quản trị | ❌ | ||
admin_startRPC | Quản trị | ❌ | ||
admin_startWS | Quản trị | ❌ | ||
admin_stopRPC | Quản trị | ❌ | ||
admin_stopWS | Quản trị | ❌ | ||
clique_getSnapshot | Clique | |||
clique_getSnapshotAtHash | Clique | |||
clique_getSigners | Clique | |||
clique_proposals | Clique | |||
clique_propose | Clique | |||
clique_discard | Clique | |||
clique_status | Clique | |||
debug_backtraceAt | Gỡ lỗi | |||
debug_blockProfile | Gỡ lỗi | ✔ | ||
debug_cpuProfile | Gỡ lỗi | ✔ | ||
debug_dumpBlock | Gỡ lỗi | |||
debug_gcStats | Gỡ lỗi | ✔ | ||
debug_getBlockRlp | Gỡ lỗi | |||
debug_goTrace | Gỡ lỗi | ✔ | ||
debug_freeOSMemory | Gỡ lỗi | ✔ | ||
debug_memStats | Gỡ lỗi | ✔ | ||
debug_mutexProfile | Debug | ✔ | ||
debug_seedHash | Debug | |||
debug_setHead | Debug | |||
debug_setBlockProfileRate | Debug | ✔ | ||
debug_setGCPercent | Debug | ✔ | ||
debug_setMutexProfileFraction | Debug | ✔ | ||
debug_stacks | Debug | ✔ | ||
debug_startCPUProfile | Debug | ✔ | ||
debug_startGoTrace | Debug | ✔ | ||
debug_stopCPUProfile | Debug | ✔ | ||
debug_stopGoTrace | Debug | ✔ | ||
debug_traceBlock | Debug | ✔ | ||
debug_traceBlockByNumber | Debug | ✔ | ||
debug_traceBlockByHash | Debug | ✔ | ||
debug_traceBlockFromFile | Debug | |||
debug_standardTraceBlockToFile | Debug | |||
debug_standardTraceBadBlockToFile | Debug | |||
debug_traceTransaction | Debug | ✔ | ||
debug_verbosity | Debug | |||
debug_vmodule | Debug | |||
debug_writeBlockProfile | Debug | ✔ | ||
debug_writeMemProfile | Debug | ✔ | ||
debug_writeMutexProfile | Debug | ✔ | ||
les_serverInfo | Les | |||
les_clientInfo | Les | |||
les_priorityClientInfo | Les | |||
les_addBalance | Les | |||
les_setClientParams | Les | |||
les_setDefaultParams | Les | |||
les_latestCheckpoint | Les | |||
les_getCheckpoint | Les | |||
les_getCheckpointContractAddress | Les | |||
miner_getHashrate | Miner | ✔ | ❌ | No-op |
miner_setExtra | Miner | ✔ | ❌ | No-op |
miner_setGasPrice | Miner | ✔ | ❌ | Cần khởi động lại node |
miner_start | Miner | ✔ | ❌ | No-op |
miner_stop | Miner | ✔ | ❌ | No-op |
miner_setGasLimit | Miner | ✔ | ❌ | No-op |
miner_setEtherbase | Miner | ✔ | ❌ | |
txpool_content | TxPool | ✔ | ||
txpool_inspect | TxPool | ✔ | ||
txpool_status | TxPool | ✔ |
"earliest"
, "latest"
hoặc "pending"
.:::Dưới đây là danh sách các phương thức RPC, các tham số và một ví dụ phản hồi từ các không gian tên.## Phương pháp Web3### web3_clientVersion
Nhận phiên bản của web3 client.#### Thông số (0)#### Ví dụ khách hàng```shell
curl -X POST -H "Content-Type: application/json" http://localhost:8545 --data ''
wscat -c ws://localhost:8546 -x ''
javascript
web3.clientVersion();
### `web3_sha3`Trả về Keccak-256 (không phải là SHA3-256 chuẩn hóa) của dữ liệu đã cho.#### Thông số (1)1: đầu vào `hexutil.Bytes`- Yêu cầu: ✓ Có#### Kết quả
json
#### Ví dụ khách
shell
curl -X POST -H "Content-Type: application/json" http://localhost:8545 --data ''
wscat -c ws://localhost:8546 -x ''
javascript
web3.sha3(input);
## Phương pháp Net### `net_version`Trả về ID mạng hiện tại.
json
// Yêu cầu
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545
// Kết quả
### `net_peerCount`Trả về số lượng peer hiện đang kết nối với client.
json
// Yêu cầu
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545
// Kết quả
### `net_listening`Trả về nếu client hiện đang lắng nghe kết nối mạng.
json
// Yêu cầu
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545
// Kết quả
## Phương pháp Eth### `eth_protocolVersion`Trả về phiên bản giao thức ethereum hiện tại.
json
// Yêu cầu
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545
// Kết quả
### `eth_syncing`Đối tượng trạng thái đồng bộ có thể cần phải khác nhau tùy thuộc vào các chi tiết của giao thức đồng bộ của Tendermint. Tuy nhiên, kết quả 'đồng bộ' chỉ đơn giản là một boolean, và có thể dễ dàng suy ra từ trạng thái đồng bộ nội bộ của Tendermint.
json
// Yêu cầu
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545
// Kết quả
### `eth_gasPrice`Trả về giá gas hiện tại bằng tham số mệnh giá mặc định của EVM.
json
// Yêu cầu
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545
// Kết quả
### `eth_accounts`Trả về một mảng của tất cả các tài khoản eth.
json
// Yêu cầu
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545
// Kết quả
### `eth_blockNumber`Trả về chiều cao khối hiện tại.
json
// Yêu cầu
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545
// Kết quả
```### eth_getBalance
Trả về số dư tài khoản cho một địa chỉ tài khoản nhất định và Số khối.#### Tham số- Địa chỉ tài khoản
- Số khối hoặc Mã băm khối (EIP-1898)```json // Yêu cầu curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545
// Kết quả
```### eth_getStorageAt
Trả về địa chỉ lưu trữ cho một địa chỉ tài khoản nhất định.#### Tham số- Địa chỉ tài khoản
- Số nguyên của vị trí trong kho lưu trữ
- Số khối hoặc Mã băm khối (EIP-1898)```json // Yêu cầu curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545
// Kết quả
```### eth_getTransactionCount
Trả về tổng số giao dịch cho một địa chỉ tài khoản nhất định và Số khối.#### Tham số- Địa chỉ tài khoản
- Số khối hoặc Mã băm khối (EIP-1898)```json // Yêu cầu curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545
// Kết quả
### `eth_getBlockTransactionCountByNumber`Trả về tổng số giao dịch cho một số khối nhất định.#### Tham số- Số khối
json
// Yêu cầu
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545
// Kết quả
}
### `eth_getBlockTransactionCountByHash`Trả về tổng số giao dịch cho một mã băm khối nhất định.#### Tham số- Mã băm khối
json
// Yêu cầu
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545
// Kết quả
```### eth_getCode
Trả về mã cho một địa chỉ tài khoản nhất định và Số khối.#### Tham số- Địa chỉ tài khoản
- Số khối hoặc Mã băm khối (EIP-1898)```json // Yêu cầu curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545
// Kết quả
```### eth_sign
Phương pháp sign
tính toán một chữ ký cụ thể của Ethereum với: sign(keccak256("\x19Ethereum Signed Message:\n" + len(message) + message)))
.Bằng cách thêm một tiền tố vào thông điệp làm cho chữ ký đã tính toán dễ nhận dạng dưới dạng chữ ký cụ thể của Ethereum. Điều này ngăn chặn việc lạm dụng khi một DApp độc hại có thể ký dữ liệu tùy ý (ví dụ: giao dịch) và sử dụng chữ ký để giả mạo nạn nhân.:::cảnh báo
Địa chỉ để ký phải được mở khóa.
Dưới đây là danh sách các phương thức RPC, các tham số và ví dụ phản hồi từ các không gian tên.
Phương pháp Web3
web3_clientVersion
Nhận phiên bản web3 client.
Thông số (0)
Ví dụ Khách hàng
curl -X POST -H "Content-Type: application/json" http://localhost:8545 --dữ liệu ''
wscat -c ws://localhost:8546 -x ''
javascript
web3.clientVersion();
web3_sha3
Trả về Keccak-256 (không phải SHA3-256 chuẩn hóa) của dữ liệu đã cho.
Thông số (1)
1: đầu vào hexutil.Bytes
- Yêu cầu: ✓ Có
Kết quả
Ví dụ khách hàng
curl -X POST -H "Content-Type: application/json" http://localhost:8545 --data ''
wscat -c ws://localhost:8546 -x ''
javascript
web3.sha3(input);
Phương thức Net
net_version
Trả về id mạng hiện tại.
// Yêu cầu
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545
// Kết quả
net_peerCount
Trả về số lượng các peer hiện đang kết nối với client.
// Yêu cầu
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545
// Kết quả
net_listening
Trả về nếu client đang chủ động lắng nghe các kết nối mạng.
// Yêu cầu
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545
// Kết quả