Skip to main content

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ứcKhông gian tênĐã thực hiệnCông khaiGhi chú
web3_clientVersionWeb3
web3_sha3Web3
net_versionNet
net_peerCountNet
net_listeningNet
eth_protocolVersionEth
eth_syncingEth
eth_gasPriceEth
eth_accountsEth
eth_blockNumberEth
eth_getBalanceEth
eth_getStorageAtEth
eth_getTransactionCountEth
eth_getBlockTransactionCountByNumberEth
eth_getBlockTransactionCountByHashEth
eth_getCodeEth
eth_signEth
eth_sendTransactionEth
eth_sendRawTransactionEth
eth_callEth
eth_estimateGasEth
eth_getBlockByNumberEth
eth_getBlockByHashEth
eth_getTransactionByHashEth
eth_getTransactionByBlockHashAndIndexEth
eth_getTransactionReceiptEth
eth_newFilterEth
eth_newBlockFilterEth
eth_newPendingTransactionFilterEth
eth_uninstallFilterEth
eth_getFilterChangesEth
eth_getFilterLogsEth
eth_getLogsEth
eth_getTransactionbyBlockNumberAndIndexEth
eth_getWorkEthN/AChỉ PoW
eth_submitWorkEthN/AChỉ PoW
eth_submitHashrateEth
eth_getCompilersEth
eth_compileLLLEth
eth_compileSolidityEth
eth_compileSerpentEth
eth_signTransactionEth
eth_miningEth
eth_coinbaseEth
eth_hashrateEthN/AChỉ dành cho PoW
eth_getUncleCountByBlockHashEthN/AChỉ dành cho PoW
eth_getUncleCountByBlockNumberEthN/AChỉ dành cho PoW
eth_getUncleByBlockHashAndIndexEthN/AChỉ dành cho PoW
eth_getUncleByBlockNumberAndIndexEthN/AChỉ dành cho PoW
eth_getProofEth
eth_subscribeWebsocket
eth_unsubscribeWebsocket
personal_importRawKeyCá nhân
personal_listAccountsCá nhân
personal_lockAccountCá nhân
personal_newAccountCá nhân
personal_unlockAccountCá nhân
personal_sendTransactionCá nhân
personal_signCá nhân
personal_ecRecoverCá nhân
personal_initializeWalletCá nhân
personal_unpairCá nhân
db_putStringCSDL
db_getStringCSDL
db_putHexCSDL
db_getHexCSDL
shh_postSSH
shh_versionSSH
shh_newIdentitySSH
shh_hasIdentitySSH
shh_newGroupSSH
shh_addToGroupSSH
shh_newFilterSSH
shh_uninstallFilterSSH
shh_getFilterChangesSSH
shh_getMessagesSSH
admin_addPeerQuản trị
admin_datadirQuản trị
admin_nodeInfoQuản trị
admin_peersQuản trị
admin_startRPCQuản trị
admin_startWSQuản trị
admin_stopRPCQuản trị
admin_stopWSQuản trị
clique_getSnapshotClique
clique_getSnapshotAtHashClique
clique_getSignersClique
clique_proposalsClique
clique_proposeClique
clique_discardClique
clique_statusClique
debug_backtraceAtGỡ lỗi
debug_blockProfileGỡ lỗi
debug_cpuProfileGỡ lỗi
debug_dumpBlockGỡ lỗi
debug_gcStatsGỡ lỗi
debug_getBlockRlpGỡ lỗi
debug_goTraceGỡ lỗi
debug_freeOSMemoryGỡ lỗi
debug_memStatsGỡ lỗi
debug_mutexProfileDebug
debug_seedHashDebug
debug_setHeadDebug
debug_setBlockProfileRateDebug
debug_setGCPercentDebug
debug_setMutexProfileFractionDebug
debug_stacksDebug
debug_startCPUProfileDebug
debug_startGoTraceDebug
debug_stopCPUProfileDebug
debug_stopGoTraceDebug
debug_traceBlockDebug
debug_traceBlockByNumberDebug
debug_traceBlockByHashDebug
debug_traceBlockFromFileDebug
debug_standardTraceBlockToFileDebug
debug_standardTraceBadBlockToFileDebug
debug_traceTransactionDebug
debug_verbosityDebug
debug_vmoduleDebug
debug_writeBlockProfileDebug
debug_writeMemProfileDebug
debug_writeMutexProfileDebug
les_serverInfoLes
les_clientInfoLes
les_priorityClientInfoLes
les_addBalanceLes
les_setClientParamsLes
les_setDefaultParamsLes
les_latestCheckpointLes
les_getCheckpointLes
les_getCheckpointContractAddressLes
miner_getHashrateMinerNo-op
miner_setExtraMinerNo-op
miner_setGasPriceMinerCần khởi động lại node
miner_startMinerNo-op
miner_stopMinerNo-op
miner_setGasLimitMinerNo-op
miner_setEtherbaseMiner
txpool_contentTxPool
txpool_inspectTxPool
txpool_statusTxPool
Số khối có thể được nhập dưới dạng chuỗi Hex, "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_clientVersionNhậ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áchshell 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_getBalanceTrả 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_getStorageAtTrả 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_getTransactionCountTrả 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ốijson // 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ốijson // Yêu cầu curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Kết quả

```### eth_getCodeTrả 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_signPhươ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ả

Phương thức Eth

eth_protocolVersion

Trả về phiên bản giao thức ethereum hiện tại.

// 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 khác nhau tùy thuộc vào 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 được suy ra từ trạng thái đồng bộ nội bộ của Tendermint.

// 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 trong tham số định danh EVM mặc định.

// Yêu cầu
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Kết quả

eth_accounts

Trả về mảng của tất cả các tài khoản eth.

// Yêu cầu
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Kết quả

eth_blockNumber

Trả về độ cao khối hiện tại.

// 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 và số khối cụ thể.

Tham số

  • Địa chỉ tài khoản
  • Số khối hoặc Mã băm khối (EIP-1898)
// 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 cụ thể.

Tham số

  • Địa chỉ tài khoản
  • Số nguyên của vị trí trong lưu trữ
  • Số khối hoặc Mã băm khối (EIP-1898)
// 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 và số khối cụ thể.

Tham số

  • Địa chỉ tài khoản
  • Số khối hoặc Mã băm khối (EIP-1898)
// 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 cụ thể.

Tham số

  • Số khối
// 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 cụ thể.

Tham số

  • Mã băm khối
// 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 và số khối cụ thể.

Tham số

  • Địa chỉ tài khoản
  • Số khối hoặc Mã băm khối (EIP-1898)
// Yêu cầu
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Kết quả

eth_sign

Phương thức 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 tin nhắn làm cho chữ ký được tính toán có thể nhận diện là một 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ý để mạo danh nạn nhân.

:::cảnh báo Địa chỉ cần ký phải được mở khóa. :::

Tham số

  • Địa chỉ tài khoản
  • Tin nhắn cần ký
// Yêu cầu
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Kết quả

eth_sendTransaction

Gửi giao dịch từ tài khoản chỉ định đến tài khoản chỉ định.

Tham số

  • Đối tượng chứa:

    from: DATA, 20 Bytes - Địa chỉ gửi giao dịch.

    to: DATA, 20 Bytes - (tùy chọn khi tạo hợp đồng mới) Địa chỉ được gửi giao dịch đến.

    gas: SỐ LƯỢNG - (mặc định: 90000) Số nguyên của gas cung cấp cho việc thực thi giao dịch. Nó sẽ trả về gas không sử dụng.

    gasPrice: SỐ LƯỢNG - (tuỳ chọn, mặc định: Đang xác định) Số nguyên của giá gas được sử dụng cho mỗi gas đã thanh toán.

    value: SỐ LƯỢNG - giá trị được gửi kèm với giao dịch này.

    data: DATA - Mã đã biên dịch của hợp đồng HOẶC mã băm của chữ ký phương thức được gọi và các tham số được mã hóa. Để biết chi tiết xem ABI Hợp đồng Ethereum

    nonce: SỐ LƯỢNG - (tuỳ chọn) Số nguyên của một nonce. Điều này cho phép ghi đè các giao dịch đang chờ xử lý của bạn sử dụng cùng nonce.

// Yêu cầu
curl -X POST --data '],"id":1}' -H "Content-Type: application/json" http://localhost:8545

// Kết quả

eth_sendRawTransaction

Tạo giao dịch gọi tin nhắn mới hoặc tạo hợp đồng cho giao dịch đã ký. Bạn có thể lấy dữ liệu giao dịch đã ký bằng cách sử dụng phương thức personal_sign.

Tham số

  • Dữ liệu giao dịch đã ký
// Yêu cầu
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Kết quả

eth_call

Thực hiện một cuộc gọi tin nhắn mới ngay lập tức mà không cần tạo một giao dịch trên chuỗi khối.

Tham số

  • Đối tượng chứa:

    from: DATA, 20 Bytes - (tuỳ chọn) Địa chỉ gửi giao dịch.

    to: DATA, 20 Bytes - Địa chỉ được gửi giao dịch đến.

    gas: SỐ LƯỢNG - gas cung cấp cho việc thực thi giao dịch. eth_call không tiêu thụ gas, nhưng tham số này có thể cần cho một số thực thi.

    gasPrice: SỐ LƯỢNG - giá gas được sử dụng cho mỗi gas đã thanh toán

    value: SỐ LƯỢNG - giá trị được gửi kèm với giao dịch này

    data: DATA - (tuỳ chọn) Mã băm của chữ ký phương thức và các tham số được mã hóa. Để biết chi tiết xem ABI Hợp đồng Ethereum trong tài liệu Solidity

  • Số khối hoặc Mã băm khối (EIP-1898)

// Yêu cầu
curl -X POST --data ', "0x0"],"id":1}' -H "Content-Type: application/json" http://localhost:8545

// Kết quả

eth_estimateGas

Trả về một giá trị ước tính của gas cần thiết để gửi giao dịch.

Tham số

  • Đối tượng chứa:

    from: DATA, 20 Bytes - Địa chỉ gửi giao dịch.

    to: DATA, 20 Bytes - (tùy chọn khi tạo hợp đồng mới) Địa chỉ được gửi giao dịch đến.

    value: SỐ LƯỢNG - giá trị được gửi kèm với giao dịch này

// Yêu cầu
curl -X POST --data '],"id":1}' -H "Content-Type: application/json" http://localhost:8545

// Kết quả

eth_getBlockByNumber

Trả về thông tin về một khối bằng số khối.

Tham số

  • Số khối
  • Nếu đúng, nó trả về các đối tượng giao dịch đầy đủ, nếu sai chỉ các mã băm của các giao dịch.
// Yêu cầu
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Kết quả

eth_getBlockByHash

Trả về thông tin khối dựa trên mã băm trong lệnh trên và một giá trị bool.

Tham số

  • Mã băm của một khối.
  • Nếu đúng, nó trả về các đối tượng giao dịch đầy đủ, nếu sai chỉ các mã băm của các giao dịch.
// Yêu cầu
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Kết quả

eth_getTransactionByHash

Trả về chi tiết giao dịch dựa trên mã băm giao dịch ethereum gì đó.

Tham số

  • mã băm của một giao dịch
// Yêu cầu
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Kết quả

eth_getTransactionByBlockHashAndIndex

Trả về chi tiết giao dịch dựa trên mã băm khối và chỉ số giao dịch.

Tham số

  • Mã băm của một khối.
  • Vị trí chỉ mục giao dịch.
// Yêu cầu
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Kết quả

eth_getTransactionReceipt

Trả về biên lai của một giao dịch dựa trên mã băm giao dịch.

Lưu ý: Mã tx từ Tendermint và trạng thái biên lai Ethereum bị chuyển đổi:

TendermintEthereum
Thành công01
Thất bại10

Tham số

  • mã băm của một giao dịch
// Yêu cầu
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Kết quả
,],"logsBloom":"0x00000000100000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000040000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000004000000000000002000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000","status":"0x1","to":"0x439c697e0742a0ddb124a376efd62a72a94ac35a","transactionHash":"0xae64961cb206a9773a6e5efeb337773a6fd0a2085ce480a174135a029afea615","transactionIndex":"0x0"}}

eth_newFilter

Tạo bộ lọc mới bằng cách sử dụng các chủ đề nào đó.

Tham số

  • mã băm của một giao dịch
// Yêu cầu
curl -X POST --data '],"id":1}' -H "Content-Type: application/json" http://localhost:8545

// Kết quả

eth_newBlockFilter

Tạo một bộ lọc trong nút, để thông báo khi một khối mới đến.

// Yêu cầu
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Kết quả

eth_newPendingTransactionFilter

Tạo một bộ lọc trong node, để thông báo khi giao dịch mới đang chờ đến.

// Yêu cầu
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Kết quả

eth_uninstallFilter

Xóa bộ lọc với id đã cho. Trả về true nếu bộ lọc đã được gỡ cài đặt thành công, nếu không trả về false.

Tham số

  • Id của bộ lọc
// Yêu cầu
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Kết quả

eth_getFilterChanges

Phương pháp truy vấn cho một bộ lọc, trả về một mảng các nhật ký phát sinh kể từ lần truy vấn cuối.

Tham số

  • Id của bộ lọc
// Yêu cầu
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Kết quả

eth_getFilterLogs

Trả về một mảng của tất cả các nhật ký khớp với bộ lọc có id đã cho.

Tham số

  • QUANTITY - Id của bộ lọc
// Yêu cầu
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Kết quả
}

eth_getLogs

Trả về một mảng của tất cả các nhật ký khớp với đối tượng bộ lọc đã cho.

Tham số

  • Đối tượng chứa:

    fromBlock: QUANTITY|TAG - (tùy chọn, mặc định: "latest") Số khối nguyên, hoặc "latest" cho khối cuối hoặc "pending", "earliest" cho giao dịch chưa khai thác.

    toBlock: QUANTITY|TAG - (tùy chọn, mặc định: "latest") Số khối nguyên, hoặc "latest" cho khối cuối hoặc "pending", "earliest" cho giao dịch chưa khai thác.

    address: DATA|Array, 20 Bytes - (tùy chọn) Địa chỉ hợp đồng hoặc một danh sách địa chỉ mà từ đó nhật ký phải xuất xứ.

    topics: Mảng của DATA, - (tùy chọn) Mảng của DATA 32 Bytes các chủ đề. Chủ đề có thứ tự phụ thuộc. Mỗi chủ đề cũng có thể là một mảng của DATA với các tùy chọn "hoặc".

    blockhash: (tùy chọn, tương lai) Với thêm của EIP-234, blockHash sẽ là một tùy chọn bộ lọc mới hạn chế các nhật ký trả về cho khối duy nhất với hàm băm 32-byte blockHash. Sử dụng blockHash tương đương với fromBlock = toBlock = số lượng khối với hàm băm blockHash. Nếu blockHash có trong tiêu chí bộ lọc, thì không được phép fromBlock cũng không được toBlock.

// Yêu cầu
curl -X POST --data '],"id":1}' -H "Content-Type: application/json" http://localhost:8545

// Kết quả

eth_coinbase

Trả về tài khoản mà phần thưởng khai thác sẽ được gửi tới.

// Yêu cầu
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Kết quả

eth_getProof

Trả về các giá trị tài khoản - và lưu trữ của tài khoản được chỉ định bao gồm bằng chứng Merkle.

Tham số

  • Địa chỉ tài khoản hoặc hợp đồng
  • Số nguyên của vị trí trong lưu trữ
  • Số khối hoặc Khối lượng Băm (EIP-1898)
// Yêu cầu
curl -X POST --data '' -H "Content-type:application/json" http://localhost:8545

// Kết quả
, ]}}

Các phương pháp WebSocket

Đọc về các websocket trong Sự kiện Tendermint

eth_subscribe

đăng ký sử dụng thông báo JSON-RPC. Điều này cho phép khách hàng chờ sự kiện thay vì truy vấn chúng.

Nó hoạt động bằng cách đăng ký các sự kiện cụ thể. Node sẽ trả lại một id đăng ký. Đối với mỗi sự kiện phù hợp với đăng ký, một thông báo với dữ liệu liên quan sẽ được gửi cùng với id đăng ký.

Tham số

  • Tên đăng ký
  • Lập luận tùy chọn
// Yêu cầu
]}

// Kết quả
<

eth_unsubscribe

Hủy đăng ký từ một sự kiện bằng cách sử dụng id đăng ký

Tham số

  • ID đăng ký
// Yêu cầu

// Kết quả

Các phương pháp Cá nhân

personal_importRawKey

Riêng tư: Yêu cầu xác thực.

:::Nhập khóa riêng không mã hóa đã cho (chuỗi mã hóa hex) vào kho khóa, mã hóa nó bằng mật khẩu.Trả về địa chỉ của tài khoản mới.#### Tham số (2)1: privkey string- Yêu cầu: ✓ Có2: password string- Yêu cầu: ✓ Có```json // Yêu cầu curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

```### personal_listAccounts:::tip Riêng tư: Yêu cầu xác thực.

Nhập khóa riêng không mã hóa đã cho (chuỗi mã hóa hex) vào kho khóa, mã hóa nó bằng mật khẩu.

Trả về địa chỉ của tài khoản mới.

Tham số (2)

1: privkey string

  • Yêu cầu: ✓ Có

2: password string

  • Yêu cầu: ✓ Có
// Yêu cầu
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

personal_listAccounts

Riêng tư: Yêu cầu xác thực.

Trả về danh sách địa chỉ cho các tài khoản mà node này quản lý.

// Yêu cầu
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Kết quả

personal_lockAccount

Riêng tư: Yêu cầu xác thực.

:::Xóa khóa riêng với địa chỉ đã cho khỏi bộ nhớ. Tài khoản không còn có thể được sử dụng để gửi giao dịch.#### Tham số- Địa chỉ tài khoản```json // Yêu cầu curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Kết quả

```### personal_newAccount:::tip Riêng tư: Yêu cầu xác thực.

Xóa khóa riêng với địa chỉ đã cho khỏi bộ nhớ. Tài khoản không còn có thể sử dụng để gửi giao dịch.

Tham số

  • Địa chỉ Tài khoản
// Yêu cầu
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Kết quả

personal_newAccount

Riêng tư: Yêu cầu xác thực.

Tạo khóa riêng mới và lưu trữ nó vào thư mục kho khóa. Tập tin khóa sẽ được mã hóa bằng mật khẩu đã cho. Trả về địa chỉ của tài khoản mới.

Tham số

  • Mật khẩu
// Yêu cầu
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Kết quả

personal_unlockAccount

Riêng tư: Yêu cầu xác thực.

:::Giải mã khóa với địa chỉ đã cho từ kho khóa.Cả mật khẩu và thời gian mở khóa đều là tùy chọn khi sử dụng phần mềm Javascript console. Khóa không mã hóa sẽ được giữ trong bộ nhớ cho đến khi thời gian mở khóa hết hạn. Nếu thời gian mở khóa mặc định là 300 giây. Một khoảng thời gian rõ ràng của 0 giây mở khóa cho đến khi geth thoát.Tài khoản có thể được sử dụng với eth_signeth_sendTransaction trong khi nó được mở khóa.#### Tham số- Địa chỉ tài khoản

  • Mật khẩu
  • Thời gian```json // Yêu cầu curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Kết quả

```### personal_sendTransaction:::tip Riêng tư: Yêu cầu xác thực.

Giải mã khóa với địa chỉ đã cho từ kho khóa.

Cả mật khẩu và thời gian mở khóa đều là tùy chọn khi sử dụng phần mềm Javascript console. Khóa không mã hóa sẽ được giữ trong bộ nhớ cho đến khi thời gian mở khóa hết hạn. Nếu thời gian mở khóa mặc định là 300 giây. Một khoảng thời gian rõ ràng của 0 giây mở khóa cho đến khi geth thoát.

Tài khoản có thể được sử dụng với eth_signeth_sendTransaction trong khi nó được mở khóa.

Tham số

  • Địa chỉ Tài khoản
  • Mật khẩu
  • Thời gian
// Yêu cầu
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Kết quả

personal_sendTransaction

Riêng tư: Yêu cầu xác thực.

Xác thực mật khẩu đã cho và gửi giao dịch.

Giao dịch là đối số tương tự như cho eth_sendTransaction và chứa địa chỉ from. Nếu mật khẩu có thể được sử dụng để giải mã khóa riêng thuộc về tx.from giao dịch được xác minh, ký và gửi lên mạng.

cảnh báo

Tài khoản không được mở khóa toàn cầu trong node và không thể được dùng trong các cuộc gọi RPC khác.

Tham số

  • Đối tượng chứa:

    from: DATA, 20 Bytes - Địa chỉ giao dịch được gửi từ.

    to: DATA, 20 Bytes - (tùy chọn khi tạo hợp đồng mới) Địa chỉ giao dịch được gửi tới.

    value: SỐ LƯỢNG - giá trị được gửi với giao dịch này

  • Mật khẩu

// Yêu cầu
curl -X POST --data ', "passphrase"],"id":1}' -H "Content-Type: application/json" http://localhost:8545

// Kết quả

personal_sign

Riêng tư: Yêu cầu xác thực.

:::Phương pháp ký tính toán chữ ký cụ thể của Ethereum với: sign(keccack256("\x19Ethereum Signed Message:\n" + len(message) + message))),#### Tham số- Thông điệp

  • Địa chỉ tài khoản
  • Mật khẩu```json // Yêu cầu curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Kết quả

```### personal_ecRecover:::tip Riêng tư: Yêu cầu xác thực.

Phương pháp ký tính toán chữ ký cụ thể của Ethereum với: sign(keccack256("\x19Ethereum Signed Message:\n" + len(message) + message))),

Tham số

  • Thông điệp
  • Địa chỉ tài khoản
  • Mật khẩu
// Yêu cầu
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Kết quả

personal_ecRecover

Riêng tư: Yêu cầu xác thực.

ecRecover trả về địa chỉ liên kết với khóa riêng đã được sử dụng để tính toán chữ ký trong personal_sign.

Tham số

// Yêu cầu
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Kết quả

personal_initializeWallet

Riêng tư: Yêu cầu xác thực.

:::Khởi tạo ví mới tại URL được cung cấp, bằng cách tạo và trả về khóa riêng mới.#### Tham số (1)Tham số phải được cung cấp theo vị trí.1: url string- Yêu cầu: ✓ Có#### Ví dụ của Khách hàng```shell curl -X POST -H "Content-Type: application/json" http://localhost:8545 --data ''

wscat -c ws://localhost:8546 -x ''

javascript personal.initializeWallet(url); ```### personal_unpair:::tip Riêng tư: Yêu cầu xác thực.

Khởi tạo ví mới tại URL được cung cấp, bằng cách tạo và trả về khóa riêng mới.

Tham số (1)

Tham số phải được cung cấp theo vị trí.

1: url string

  • Yêu cầu: ✓ Có

Ví dụ của Khách hàng

curl -X POST -H "Content-Type: application/json" http://localhost:8545 --data ''

wscat -c ws://localhost:8546 -x ''
javascript
personal.initializeWallet(url);

personal_unpair

Riêng tư: Yêu cầu xác thực.

Hủy ghép xóa một ghép nối giữa ví và node.

Tham số (2)

  • URL
  • Mật khẩu ghép nối

Ví dụ của Khách hàng

curl -X POST -H "Content-Type: application/json" http://localhost:8545 --data ''

wscat -c ws://localhost:8546 -x ''
javascript
personal.unpair(url,pin);

Các phương pháp Debug

debug_traceTransaction

Phương pháp debug traceTransaction sẽ thử thực thi giao dịch theo cách chính xác như nó đã được thực hiện trên mạng. Nó sẽ phát lại bất kỳ giao dịch nào có thể đã được thực thi trước khi cuối cùng thử thực hiện giao dịch tương ứng với hàm băm đã cho.

Tham số

  • Cấu hình theo vết
// Yêu cầu
curl -X POST --data ', step: function(log) , result: function() }"}],"id":1}' -H "Content-Type: application/json" http://localhost:8545

//Kết quả
["68410", "51470"]

debug_traceBlockByNumber

Endpoint traceBlockByNumber chấp nhận một số khối và sẽ phát lại khối đã hiện có trong cơ sở dữ liệu.

Tham số

  • Cấu hình Theo dõi
// Yêu cầu
curl -X POST --data ', step: function(log) , result: function() }"}],"id":1}' -H "Content-Type: application/json" http://localhost:8545

// Kết quả
]}

Phương thức Thợ mỏ

miner_getHashrate

Riêng tư: Yêu cầu xác thực.

:::Lấy tốc độ băm tại H/s (các hoạt động băm mỗi giây).:::cảnh báo Chỉ dành cho Proof-of-Work. Điểm cuối này luôn trả về 0.

Lấy tốc độ băm tại H/s (các hoạt động băm mỗi giây).

:::cảnh báo Chỉ dành cho Proof-of-Work. Điểm cuối này luôn trả về 0. :::

// Yêu cầu
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Kết quả

miner_setExtra

Riêng tư: Yêu cầu xác thực.

:::Thiết lập dữ liệu bổ sung mà một người xác thực có thể đưa vào khi đề xuất các khối. Điều này bị giới hạn ở 32 byte.:::cảnh báo Không được hỗ trợ. Điểm cuối này luôn trả về lỗi

Thiết lập dữ liệu bổ sung mà một người xác thực có thể đưa vào khi đề xuất các khối. Điều này bị giới hạn ở 32 byte.

:::cảnh báo Không được hỗ trợ. Điểm cuối này luôn trả về lỗi :::

Tham số

  • Dữ liệu
// Yêu cầu
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Kết quả

miner_setGasPrice

Riêng tư: Yêu cầu xác thực.

:::Thiết lập giá gas tối thiểu dùng để chấp nhận giao dịch. Bất kỳ giao dịch nào dưới mức này đều bị loại khỏi quá trình đề xuất khối của người xác thực.Phương thức này yêu cầu khởi động lại node sau khi gọi vì nó thay đổi tệp cấu hình.Hãy đảm bảo rằng lệnh gọi crossfid start của bạn không sử dụng cờ minimum-gas-prices vì giá trị này sẽ được sử dụng thay cho cái đã đặt trong tệp cấu hình.#### Tham số- Giá Gas Hex```json // Yêu cầu curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Kết quả

```### miner_start:::tip Riêng tư: Yêu cầu xác thực.

Thiết lập giá gas tối thiểu dùng để chấp nhận giao dịch. Bất kỳ giao dịch nào dưới mức này đều bị loại khỏi quá trình đề xuất khối của người xác thực.

Phương thức này yêu cầu khởi động lại node sau khi gọi vì nó thay đổi tệp cấu hình.

Hãy đảm bảo rằng lệnh gọi crossfid start của bạn không sử dụng cờ minimum-gas-prices vì giá trị này sẽ được sử dụng thay cho cái đã đặt trong tệp cấu hình.

Tham số

  • Giá Gas Hex
// Yêu cầu
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Kết quả

miner_start

Riêng tư: Yêu cầu xác thực.

Bắt đầu quá trình xác thực CPU với số luồng được chỉ định.

cảnh báo

Không được hỗ trợ. Điểm cuối này luôn trả về lỗi

Tham số

  • Số luồng Hex
// Yêu cầu
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Kết quả

miner_stop

Riêng tư: Yêu cầu xác thực.

:::Dừng hoạt động xác thực.:::cảnh báo Không được hỗ trợ. Điểm cuối này luôn thực hiện một bước không có.

:::

Dừng hoạt động xác thực.

:::cảnh báo Không được hỗ trợ. Điểm cuối này luôn thực hiện một bước không có. :::

// Yêu cầu
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

miner_setGasLimit

Riêng tư: Yêu cầu xác thực.

:::Thiết lập giới hạn gas mà thợ mỏ sẽ nhắm đến khi khai thác. Lưu ý: trên các mạng mà EIP-1559 được kích hoạt, điều này phải được thiết lập gấp đôi những gì bạn muốn giới hạn mục tiêu gas (tức là gas thực tế được sử dụng trung bình mỗi khối).:::cảnh báo Không được hỗ trợ. Điểm cuối này luôn trả về false

Thiết lập giới hạn gas mà thợ mỏ sẽ nhắm đến khi khai thác. Lưu ý: trên các mạng mà EIP-1559 được kích hoạt, điều này phải được thiết lập gấp đôi những gì bạn muốn giới hạn mục tiêu gas (tức là gas thực tế được sử dụng trung bình mỗi khối).

:::cảnh báo Không được hỗ trợ. Điểm cuối này luôn trả về false :::

Tham số

  • Giới hạn gas Hex
// Yêu cầu
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Kết quả

miner_setEtherbase

Riêng tư: Yêu cầu xác thực.

Thiết lập etherbase. Nó sẽ thay đổi ví nơi phần thưởng xác thực được gửi đến.

Tham số

  • Địa chỉ Tài khoản
// Yêu cầu
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Kết quả

Phương thức TxPool

txpool_content

Trả về danh sách chi tiết chính xác của tất cả các giao dịch hiện đang chờ được đưa vào các khối tiếp theo cũng như các giao dịch đang được lập lịch để thực hiện trong tương lai.

Tham số (0)

Ví dụ về Máy khách

curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

wscat -c ws://localhost:8546 -x ''
javascript
txpool.content();

Kết quả

json
,"queued":{}}

txpool_inspect

Trả về danh sách dưới định dạng văn bản để tóm tắt tất cả các giao dịch hiện đang chờ được đưa vào các khối tiếp theo cũng như các giao dịch đang được lập lịch để thực hiện trong tương lai. Đây là một phương thức đặc biệt hướng tới các nhà phát triển để nhanh chóng xem các giao dịch trong bể và tìm ra các vấn đề tiềm năng.

Tham số (0)

Ví dụ về Máy khách

curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

wscat -c ws://localhost:8546 -x ''
javascript
txpool.inspect();

Kết quả

json
,"queued":{}}

txpool_status

Trả về số lượng giao dịch hiện đang chờ được đưa vào các khối tiếp theo cũng như các giao dịch đang được lập lịch để thực hiện trong tương lai.

Tham số (0)

Ví dụ về Máy khách

curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

wscat -c ws://localhost:8546 -x ''
txpool.status();

Kết quả

json
}