Ethereum JSON-RPC API(1)

https://ethereum.org/en/developers/docs/apis/json-rpc/

번역

소프트웨어 애플리케이션이 블록체인 데이터를 읽거나 트랜잭션을 네트워크에 전송하는 등 이더리움 블록체인과 상호 작용하려면 이더리움 노드에 연결해야 합니다.

이를 위해 모든 이더리움 클라이언트는 JSON-RPC 사양을 구현하므로 특정 노드나 클라이언트 구현에 관계없이 애플리케이션이 사용할 수 있는 통일된 메서드 세트가 있습니다.

JSON-RPC는 무상태(Stateless), 경량(light-weight) 원격 프로시저 호출(RPC) 프로토콜입니다. 이 프로토콜은 여러 데이터 구조와 그 처리에 관한 규칙을 정의합니다. 이 개념은 동일한 프로세스 내에서, 소켓을 통해, HTTP를 통해 또는 다양한 메시지 전달 환경에서 사용할 수 있다는 점에서 전송에 구애받지 않습니다. 데이터 형식으로 JSON을 사용합니다.

클라이언트 구현

이더리움 클라이언트는 JSON-RPC 사양을 구현할 때 각각 다른 프로그래밍 언어를 사용할 수 있습니다. 특정 프로그래밍 언어와 관련된 자세한 내용은 개별 클라이언트 설명서를 참조하세요. 최신 API 지원 정보는 각 클라이언트의 설명서를 확인하시기 바랍니다.

편의 라이브러리

JSON-RPC API를 통해 이더리움 클라이언트와 직접 상호작용할 수도 있지만, DApp 개발자에게는 더 쉬운 옵션이 있는 경우가 많습니다. JSON-RPC API 위에 래퍼를 제공하기 위해 많은 자바스크립트백엔드 API 라이브러리가 존재합니다. 이러한 라이브러리를 사용하면 개발자는 원하는 프로그래밍 언어의 직관적인 메서드 한 줄로 이더리움과 상호작용하는 JSON-RPC 요청을 처리할 수 있습니다.

합의 클라이언트 APIS

이 페이지는 주로 이더리움 실행 클라이언트에서 사용하는 JSON-RPC API를 다루고 있습니다. 그러나 합의 클라이언트에는 사용자가 노드에 대한 정보를 쿼리하고, 비콘 블록, 비콘 상태 및 기타 합의 관련 정보를 노드에서 직접 요청할 수 있는 RPC API도 있습니다. 이 API는 비콘 API 웹페이지에 문서화되어 있습니다.

내부 API는 노드 내 클라이언트 간 통신, 즉 합의 클라이언트와 실행 클라이언트가 데이터를 교환할 수 있도록 하는 데에도 사용됩니다. 이를 ‘엔진 API’라고 하며, 사양은 GitHub에서 확인할 수 있습니다.

실행 클라이언트 사양

GitHub에서 전체 JSON-RPC API 사양을 읽어보세요.

규칙

16진수 인코딩

JSON을 통해 전달되는 두 가지 주요 데이터 유형은 형식이 지정되지 않은 바이트 배열과 수량입니다. 둘 다 16진수 인코딩으로 전달되지만 포멧 지정에 대한 요구 사항이 다릅니다.

수량

수량(정수, 숫자)을 인코딩하는 경우: 가장 간단한 표현인 “0x”를 접두사로 사용하여 16진수로 인코딩합니다(약간의 예외: 0은 “0x0″으로 표시되어야 함).

여기 몇 가지 예가 있어요.

  • 0x41(10진수 65)
  • 0x400(십진수로 1024)
  • 잘못됨: 0x(항상 최소한 하나의 숫자가 있어야 함 – 0은 “0x0″임)
  • WRONG: 0x0400(앞에 0을 붙일 수 없음)
  • 잘못됨: ff(접두사 0x가 붙어야 함)

형식화되지 않은 데이터

형식화되지 않은 데이터(바이트 배열, 계정 주소, 해시, 바이트코드 배열)를 인코딩하는 경우: 16진수로 인코딩하고 접두사 “0x”, 바이트당 2자리 16진수로 인코딩합니다.

여기 몇 가지 예가 있어요.

  • 0x41(크기 1, “A”)
  • 0x004200(크기 3, “\0B\0”)
  • 0x(크기 0, “”)
  • 잘못됨: 0xf0f0f(짝수여야 함)
  • 잘못됨: 004200(접두사 0x가 붙어야 함)

기본 블록 매개변수

다음 메소드에는 추가 기본 블록 매개변수가 있습니다.

  • eth_getBalance
  • eth_getCode
  • eth_getTransactionCount
  • eth_getStorageAt
  • eth_call

이더리움 상태에 따라 작동하는 요청이 이루어지면 마지막 defaultBlock 매개변수가 블록 높이를 결정합니다.

defaultBlock 매개변수에는 다음 옵션이 가능합니다.

  • HEX String– 정수 블록 번호
  • String "earliest" – 최초/제네시스 블록의 경우
  • String "latest"– 최근 채굴된 블록의 경우
  • String "safe"– 최신 안전 헤드 블록용
  • String "finalized"– 가장 최근에 완성된 블록의 경우
  • String "pending"– 보류 상태/트랜잭션의 경우

예제

이 페이지에서는 명령줄 도구인 curl을 사용하여 개별 JSON_RPC API 엔드포인트를 사용하는 방법에 대한 예제를 제공합니다. 이러한 개별 엔드포인트 예제는 아래의 curl 예제 섹션에서 찾을 수 있습니다. 페이지 아래쪽에는 Geth 노드, JSON_RPC API 및 curl을 사용하여 스마트 컨트랙트를 컴파일하고 배포하는 end-to-end 예제도 제공합니다.

CURL 예제

이더리움 노드에 curl 요청을 통해 JSON_RPC API를 사용하는 예제는 아래에 나와 있습니다. 각 예제에는 특정 엔드포인트, 해당 매개변수, 반환 유형에 대한 설명과 사용 방법에 대한 작업 예제가 포함되어 있습니다.

curl 요청은 콘텐츠 유형과 관련된 오류 메시지를 반환할 수 있습니다. 이는 --data 옵션이 콘텐츠 유형을 application/x-www-form-urlencoded로 설정하기 때문입니다. 노드에서 이 문제가 발생하면 호출 시작 부분에 -H "Content-Type: application/json"을 넣어 헤더를 수동으로 설정하세요. 또한 이 예제에는 curl의 마지막 인수가 되어야 하는 URL/IP 및 포트 조합(예: 127.0.0.1:8545)이 포함되어 있지 않습니다. 이러한 추가 데이터를 포함한 완전한 curl 요청은 다음과 같은 형식을 취합니다:

curl -H "Content-Type: application/json" -X POST \
--data '{"jsonrpc":"2.0","method":"web3_clientVersion","params":[],"id":67}' \
127.0.0.1:8545
Zsh

가십, 상태, 이력

몇 가지 핵심 JSON-RPC 메서드는 이더리움 네트워크의 데이터를 필요로 하며, 크게 세 가지로 분류할 수 있습니다: 가십, 상태, 이력입니다. 이 섹션의 링크를 사용해 각 메서드로 이동하거나 목차를 사용해 전체 메서드 목록을 살펴보세요.

가십 메서드

이러한 방법은 체인의 헤드를 추적합니다. 트랜잭션이 네트워크를 돌아다니며 블록으로 이동하는 방법과 클라이언트가 새로운 블록에 대해 알아내는 방법입니다.

  • eth_blockNumber
  • eth_sendRawTransaction

상태 메서드

저장된 모든 데이터의 현재 상태를 보고하는 메서드입니다. ‘상태’는 하나의 큰 공유 RAM과 같으며 계정 잔액, 계약 데이터, 가스 추정치 등을 포함합니다.

  • eth_getBalance
  • eth_getStorageAt
  • eth_getTransactionCount
  • eth_getCode
  • eth_call
  • eth_estimateGas

이력 메서드

모든 블록의 기록 기록을 생성 시점까지 가져옵니다. 이는 하나의 큰 첨부 전용 파일과 같으며 모든 블록 헤더, 블록 본문, 삼촌 블록, 트랜잭션 영수증을 포함합니다.

  • eth_getBlockTransactionCountByHash
  • eth_getBlockTransactionCountByNumber
  • eth_getUncleCountByBlockHash
  • eth_getUncleCountByBlockNumber
  • eth_getBlockByHash
  • eth_getBlockByNumber
  • eth_getTransactionByHash
  • eth_getTransactionByBlockHashAndIndex
  • eth_getTransactionByBlockNumberAndIndex
  • eth_getTransactionReceipt
  • eth_getUncleByBlockHashAndIndex
  • eth_getUncleByBlockNumberAndIndex

JSON-RPC API 메서드

web3_clientVersion

Parameters

None

Returns

String – 현재 클라이언트 버전

Example

// Request
curl -X POST --data '{"jsonrpc":"2.0","method":"web3_clientVersion","params":[],"id":67}'
// Result
{
  "id":67,
  "jsonrpc":"2.0",
  "result": "Geth/v1.12.1-stable/linux-amd64/go1.19.1"
}
Zsh

web3_sha3

주어진 데이터의 Keccak-256(표준화된 SHA3-256이 아님)을 반환합니다.

Parameters

  1. DATA – SHA3 ​​해시로 변환할 데이터
params: ["0x68656c6c6f20776f726c64"]
Zsh

Returns

DATA – 주어진 문자열의 SHA3 결과입니다.

Example

// Request
curl -X POST --data '{"jsonrpc":"2.0","method":"web3_sha3","params":["0x68656c6c6f20776f726c64"],"id":64}'
// Result
{
  "id":64,
  "jsonrpc": "2.0",
  "result": "0x47173285a8d7341e5e972fc677286384f802f8ef42a5ec5f03bbfa254cb01fad"
}
Zsh

net_version

현재 네트워크 ID를 반환합니다.

Parameters

None

Returns

String – 현재 네트워크 ID.

현재 네트워크 ID의 전체 목록은 chainlist.org에서 확인할 수 있습니다. 몇 가지 일반적인 것들은 다음과 같습니다:

  • 1: Ethereum Mainnet
  • 5: Goerli testnet
  • 11155111: Sepolia testnet

Example

// Request
curl -X POST --data '{"jsonrpc":"2.0","method":"net_version","params":[],"id":67}'
// Result
{
  "id":67,
  "jsonrpc": "2.0",
  "result": "3"
}
Zsh

net_listening

클라이언트가 네트워크 연결을 적극적으로 수신하고 있으면 true를 반환합니다.

Parameters

None

Returns

Boolean – 수신하는 경우에는 true이고, 그렇지 않으면 false입니다.

Example

// Request
curl -X POST --data '{"jsonrpc":"2.0","method":"net_listening","params":[],"id":67}'
// Result
{
  "id":67,
  "jsonrpc":"2.0",
  "result":true
}
Zsh

net_peerCount

현재 클라이언트에 연결된 피어 수를 반환합니다.

Parameters

None

Returns

QUANTITY – 연결된 피어 수의 정수입니다.

Example

// Request
curl -X POST --data '{"jsonrpc":"2.0","method":"net_peerCount","params":[],"id":74}'
// Result
{
  "id":74,
  "jsonrpc": "2.0",
  "result": "0x2" // 2
}
Zsh

eth_protocolVersion

현재 이더리움 프로토콜 버전을 반환합니다.

Parameters

None

Returns

String – 현재 이더리움 프로토콜 버전

Example

// Request
curl -X POST --data '{"jsonrpc":"2.0","method":"eth_protocolVersion","params":[],"id":67}'
// Result
{
  "id":67,
  "jsonrpc": "2.0",
  "result": "54"
}
Zsh

eth_syncing

동기화 상태에 대한 데이터가 포함된 객체를 반환합니다.

Parameters

None

Returns

정확한 반환 데이터는 클라이언트 구현에 따라 다릅니다. 노드가 동기화되지 않는 경우 모든 클라이언트는 False를 반환하며, 모든 클라이언트는 다음 필드를 반환합니다.

Object|Boolean, 동기화 상태 데이터가 있는 개체 또는 동기화하지 않을 때 FALSE입니다:

  • startingBlockQUANTITY – 가져오기가 시작된 블록(동기화가 머리에 도달한 후에만 초기화됨)
  • currentBlockQUANTITY – 현재 블록(eth_blockNumber와 동일)
  • highestBlockQUANTITY – 예상 최고 블록

그러나 개별 클라이언트는 추가 데이터를 제공할 수도 있습니다. 예를 들어 Geth는 다음을 반환합니다:

{
  "jsonrpc": "2.0",
  "id": 1,
  "result": {
    "currentBlock": "0x3cf522",
    "healedBytecodeBytes": "0x0",
    "healedBytecodes": "0x0",
    "healedTrienodes": "0x0",
    "healingBytecode": "0x0",
    "healingTrienodes": "0x0",
    "highestBlock": "0x3e0e41",
    "startingBlock": "0x3cbed5",
    "syncedAccountBytes": "0x0",
    "syncedAccounts": "0x0",
    "syncedBytecodeBytes": "0x0",
    "syncedBytecodes": "0x0",
    "syncedStorage": "0x0",
    "syncedStorageBytes": "0x0"
  }
}
Zsh

반면 Besu는 돌아옵니다:

{
  "jsonrpc": "2.0",
  "id": 51,
  "result": {
    "startingBlock": "0x0",
    "currentBlock": "0x1518",
    "highestBlock": "0x9567a3",
    "pulledStates": "0x203ca",
    "knownStates": "0x200636"
  }
}
Zsh

자세한 내용은 특정 클라이언트에 대한 설명서를 참조하세요.

Example

// Request
curl -X POST --data '{"jsonrpc":"2.0","method":"eth_syncing","params":[],"id":1}'
// Result
{
  "id":1,
  "jsonrpc": "2.0",
  "result": {
    startingBlock: '0x384',
    currentBlock: '0x386',
    highestBlock: '0x454'
  }
}
// Or when not syncing
{
  "id":1,
  "jsonrpc": "2.0",
  "result": false
}
Zsh

eth_coinbase

클라이언트 코인베이스 주소를 반환합니다.

Parameters

None

Returns

DATA, 20 bytes – 현재 코인베이스 주소입니다.

Example

// Request
curl -X POST --data '{"jsonrpc":"2.0","method":"eth_coinbase","params":[],"id":64}'
// Result
{
  "id":64,
  "jsonrpc": "2.0",
  "result": "0x407d73d8a49eeb85d32cf465507dd71d507100c1"
}
Zsh

eth_chainId

리플레이 보호 트랜잭션 서명에 사용된 체인 ID를 반환합니다.

Parameters

None

Returns

chainId, 현재 체인 아이디의 정수를 나타내는 문자열로 16진수 값입니다.

Example

// Request
curl -X POST --data '{"jsonrpc":"2.0","method":"eth_chainId","params":[],"id":67}'
// Result
{
  "id":67,
  "jsonrpc": "2.0",
  "result": "0x1"
}
Zsh

eth_mining

클라이언트가 새 블록을 활발하게 채굴하고 있으면 참을 반환합니다. 작업 증명 네트워크에서만 참을 반환할 수 있으며, The Merge 이후 일부 클라이언트에서는 사용하지 못할 수도 있습니다.

Parameters

None

Returns

Boolean – 클라이언트가 채굴 중이면 True을 반환하고, 그렇지 않으면 False을 반환합니다.

Example

// Request
curl -X POST --data '{"jsonrpc":"2.0","method":"eth_mining","params":[],"id":71}'
// Result
{
  "id":71,
  "jsonrpc": "2.0",
  "result": true
}
Zsh

eth_hashrate

노드가 채굴 중인 초당 해시 수를 반환합니다. 작업 증명 네트워크에서만 참을 반환할 수 있으며 The Merge 이후 일부 클라이언트에서는 사용하지 못할 수도 있습니다.

Parameters

None

Returns

QUANTITY – 초당 해시 수입니다.

Example

// Request
curl -X POST --data '{"jsonrpc":"2.0","method":"eth_hashrate","params":[],"id":71}'
// Result
{
  "id":71,
  "jsonrpc": "2.0",
  "result": "0x38a"
}
Zsh

eth_gasPrice

현재 가스당 가격의 추정치를 웨이 단위로 반환합니다. 예를 들어 Besu 클라이언트는 지난 100개 블록을 검사하여 기본적으로 중간 가스 단가를 반환합니다.

Parameters

None

Returns

QUANTITY – 현재 가스 가격의 위 단위 정수를 입력합니다.

Example

// Request
curl -X POST --data '{"jsonrpc":"2.0","method":"eth_gasPrice","params":[],"id":73}'
// Result
{
  "id":73,
  "jsonrpc": "2.0",
  "result": "0x1dfd14000" // 8049999872 Wei
}
Zsh

eth_accounts

클라이언트가 소유한 주소 목록을 반환합니다.

Parameters

None

Returns

Array of DATA, 20 Bytes – 클라이언트가 소유한 주소입니다.

Example

// Request
curl -X POST --data '{"jsonrpc":"2.0","method":"eth_accounts","params":[],"id":1}'
// Result
{
  "id":1,
  "jsonrpc": "2.0",
  "result": ["0x407d73d8a49eeb85d32cf465507dd71d507100c1"]
}
Zsh

eth_blockNumber

가장 최근 블록의 수를 반환합니다.

Parameters

None

Returns

QUANTITY – 클라이언트가 현재 접속 중인 블록 번호의 정수입니다.

Example

// Request
curl -X POST --data '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":83}'
// Result
{
  "id":83,
  "jsonrpc": "2.0",
  "result": "0x4b7" // 1207
}
Zsh

eth_getBalance

지정된 주소의 계정 잔액을 반환합니다.

Parameters

  1. DATA, 20 Bytes – 주소를 입력하여 잔액을 확인합니다.
  2. QUANTITY|TAG – 정수 블록 번호 또는 "latest""earliest" or "pending"이라는 문자열은 기본 블록 매개 변수를 참조하세요.
params: ["0x407d73d8a49eeb85d32cf465507dd71d507100c1", "latest"]
Zsh

Returns

QUANTITY – 현재 잔액의 정수를 wei 단위로 입력합니다.

Example

// Request
curl -X POST --data '{"jsonrpc":"2.0","method":"eth_getBalance","params":["0x407d73d8a49eeb85d32cf465507dd71d507100c1", "latest"],"id":1}'
// Result
{
  "id":1,
  "jsonrpc": "2.0",
  "result": "0x0234c8a3397aab58" // 158972490234375000
}
Zsh

eth_getStorageAt

지정된 주소의 저장 위치에서 값을 반환합니다.

Parameters

  1. DATA, 20 Bytes – 저장소의 주소를 입력합니다.
  2. QUANTITY – 저장소 내 위치의 정수입니다.
  3. QUANTITY|TAG – 정수 블록 번호 또는 "latest""earliest" or "pending"이라는 문자열은 기본 블록 매개 변수를 참조하세요.

Returns

DATA – 이 저장 위치의 값입니다.

Example 정확한 위치를 계산하는 것은 검색할 저장소에 따라 달라집니다. 0x295a70b2de5e3953354a6a8344e616ed314d7251 주소 0x391694e7e0b0cce554cb130d723a9d27458f9298에 배포된 다음 컨트랙트를 예로 들어보겠습니다.

contract Storage {
    uint pos0;
    mapping(address => uint) pos1;
    function Storage() {
        pos0 = 1234;
        pos1[msg.sender] = 5678;
    }
}
Solidity

`pos0`의 값을 검색하는 것은 간단합니다:

curl -X POST --data '{"jsonrpc":"2.0", "method": "eth_getStorageAt", "params": ["0x295a70b2de5e3953354a6a8344e616ed314d7251", "0x0", "latest"], "id": 1}' localhost:8545
{"jsonrpc":"2.0","id":1,"result":"0x00000000000000000000000000000000000000000000000000000000000004d2"}
Zsh

지도의 요소를 검색하는 것은 더 어렵습니다. 맵에서 요소의 위치는 다음을 사용하여 계산됩니다:

keccak(LeftPad32(key, 0), LeftPad32(map position, 0))
Solidity

즉, pos1["0x391694e7e0b0cce554cb130d723a9d27458f9298"]에서 저장소를 검색하려면 다음을 사용하여 위치를 계산해야 합니다:

keccak(
  decodeHex(
    "000000000000000000000000391694e7e0b0cce554cb130d723a9d27458f9298" +
      "0000000000000000000000000000000000000000000000000000000000000001"
  )
)
Solidity

web3 라이브러리와 함께 제공되는 geth 콘솔을 사용하여 계산할 수 있습니다:

> var key = "000000000000000000000000391694e7e0b0cce554cb130d723a9d27458f9298" + "0000000000000000000000000000000000000000000000000000000000000001"
undefined
> web3.sha3(key, {"encoding": "hex"})
"0x6661e9d6d8b923d5bbaab1b96e1dd51ff6ea2a93520fdc9eb75d059238b8c5e9"
JavaScript

이제 스토리지를 가져올 차례입니다:

curl -X POST --data '{"jsonrpc":"2.0", "method": "eth_getStorageAt", "params": ["0x295a70b2de5e3953354a6a8344e616ed314d7251", "0x6661e9d6d8b923d5bbaab1b96e1dd51ff6ea2a93520fdc9eb75d059238b8c5e9", "latest"], "id": 1}' localhost:8545
{"jsonrpc":"2.0","id":1,"result":"0x000000000000000000000000000000000000000000000000000000000000162e"}
Zsh

eth_getTransactionCount

주소에서 보낸 트랜잭션 수를 반환합니다.

Parameters

  1. DATA, 20 Bytes – 주소.
  2. QUANTITY|TAG – 정수 블록 번호 또는 "latest""earliest" or "pending"이라는 문자열은 기본 블록 매개 변수를 참조하세요.
params: [
  "0x407d73d8a49eeb85d32cf465507dd71d507100c1",
  "latest", // state at the latest block
]
JSON

Returns

QUANTITY – 이 주소에서 전송된 트랜잭션 수의 정수입니다.

Example

// Request
curl -X POST --data '{"jsonrpc":"2.0","method":"eth_getTransactionCount","params":["0x407d73d8a49eeb85d32cf465507dd71d507100c1","latest"],"id":1}'
// Result
{
  "id":1,
  "jsonrpc": "2.0",
  "result": "0x1" // 1
}
Zsh

eth_getBlockTransactionCountByHash

주어진 블록 해시와 일치하는 블록에서 블록의 트랜잭션 수를 반환합니다.

Parameters

  1. DATA, 32 Bytes – 블록의 해시
params: ["0xb903239f8543d04b5dc1ba6579132b143087c68db1b2168786408fcbce568238"]
JSON

Returns

QUANTITY – 이 블록에 있는 트랜잭션 수의 정수입니다.

Example

// Request
curl -X POST --data '{"jsonrpc":"2.0","method":"eth_getBlockTransactionCountByHash","params":["0xb903239f8543d04b5dc1ba6579132b143087c68db1b2168786408fcbce568238"],"id":1}'
// Result
{
  "id":1,
  "jsonrpc": "2.0",
  "result": "0xb" // 11
}
Zsh

eth_getBlockTransactionCountByNumber

주어진 블록 번호와 일치하는 블록의 트랜잭션 수를 반환합니다.

Parameters

  1. QUANTITY|TAG – 정수 블록 번호 또는 "latest""earliest" or "pending"이라는 문자열은 기본 블록 매개 변수를 참조하세요.
params: [
  "0xe8", // 232
]
JSON

Returns

QUANTITY – 이 블록에 있는 트랜잭션 수의 정수입니다.

Example

// Request
curl -X POST --data '{"jsonrpc":"2.0","method":"eth_getBlockTransactionCountByNumber","params":["0xe8"],"id":1}'
// Result
{
  "id":1,
  "jsonrpc": "2.0",
  "result": "0xa" // 10
}
Zsh

eth_getUncleCountByBlockHash

주어진 블록 해시와 일치하는 블록에서 블록의 삼촌 수를 반환합니다.

Parameters

  1. DATA, 32 Bytes – 블록의 해시
params: ["0xb903239f8543d04b5dc1ba6579132b143087c68db1b2168786408fcbce568238"]
JSON

Returns

QUANTITY – 이 블록에 있는 삼촌 수의 정수입니다.

Example

// Request
curl -X POST --data '{"jsonrpc":"2.0","method":"eth_getUncleCountByBlockHash","params":["0xb903239f8543d04b5dc1ba6579132b143087c68db1b2168786408fcbce568238"],"id":1}'
// Result
{
  "id":1,
  "jsonrpc": "2.0",
  "result": "0x1" // 1
}
Zsh

eth_getUncleCountByBlockNumber

주어진 블록 번호와 일치하는 블록에서 블록의 삼촌 수를 반환합니다.

Parameters

  1. QUANTITY|TAG – 정수 블록 번호 또는 "latest""earliest" or "pending"이라는 문자열은 기본 블록 매개 변수를 참조하세요.
params: [
  "0xe8", // 232
]
JSON

Returns

QUANTITY – 이 블록에 있는 삼촌 수의 정수입니다.

Example

// Request
curl -X POST --data '{"jsonrpc":"2.0","method":"eth_getUncleCountByBlockNumber","params":["0xe8"],"id":1}'
// Result
{
  "id":1,
  "jsonrpc": "2.0",
  "result": "0x1" // 1
}
Zsh

eth_getCode

지정된 주소의 코드를 반환합니다.

Parameters

  1. DATA, 20 Bytes – 주소
  2. QUANTITY|TAG – 정수 블록 번호 또는 "latest""earliest" or "pending"이라는 문자열은 기본 블록 매개 변수를 참조하세요.
params: [
  "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b",
  "0x2", // 2
]
JSON

Returns

DATA – 주어진 주소의 코드.

Example

// Request
curl -X POST --data '{"jsonrpc":"2.0","method":"eth_getCode","params":["0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b", "0x2"],"id":1}'
// Result
{
  "id":1,
  "jsonrpc": "2.0",
  "result": "0x600160008035811a818181146012578301005b601b6001356025565b8060005260206000f25b600060078202905091905056"
}
Zsh

Leave a Comment