跳转至

/wallet/getblockbyid

按区块哈希查询区块。

  • 源码:framework/src/main/java/org/tron/core/services/http/GetBlockByIdServlet.java
  • Method:GET / POST
  • Request:api.BytesMessage
  • 支持固化接口:/walletsolidity/getblockbyid

请求参数

GET 从 URL 查询参数读取以下字段;POST 从 JSON 请求体读取。

字段 方法 类型 必填 说明
value GET / POST string 区块哈希 hex;省略时使用空 bytes 查询并返回 {}
visible GET / POST bool 地址、文本字段格式

示例:

curl --request POST \
     --url https://nile.trongrid.io/wallet/getblockbyid \
     --header 'accept: application/json' \
     --header 'content-type: application/json' \
     --data '
{ "value": "0000000003fe262d52bfa4b2814f816fd2e57af5b98a33d60d8630a03a908e0e" }
'

响应

返回 protocol.Block,字段同 /wallet/getnowblock

响应示例(省略 transactions 内容):

{
  "blockID": "0000000003fe262d52bfa4b2814f816fd2e57af5b98a33d60d8630a03a908e0e",
  "block_header": {
    "raw_data": {
      "number": 66987565,
      "txTrieRoot": "faf8fe3858339ead25cc892461c82a59b84dca4a51c45b026676bf3f45a352a2",
      "witness_address": "41b2f713d57dbcec679d93a8849fa0cd0e4db594ba",
      "parentHash": "0000000003fe262c85cd6b02033f4c3e5c1efa35de256a17bd906dc61fb1aeed",
      "version": 34,
      "timestamp": 1777445121000
    },
    "witness_signature": "5b3cf6cb15d52947989f7726f4907a144b39ccd667a1a0f98707b40cdfe65b96173ddf34ae8dcc5e78f136e0cf903a15c7128984aa2191f02333209d1879d3f900"
  },
  "transactions": [ /* 见 /wallet/gettransactionbyid 单笔交易示例 */ ]
}

哈希不存在返回 {}

异常响应

方法 触发条件 响应
GET / POST 请求体超过 node.http.maxMessageSize 通常由 SizeLimitHandler 返回 HTTP 413 Payload Too Large
GET / POST value 不是合法 hex {"Error": "class org.bouncycastle.util.encoders.DecoderException : <message>"}(GET);{"Error": "class org.tron.core.services.http.JsonFormat$ParseException : <message>"}(POST)
POST 请求体不是合法 JSON / 字段类型不符(POST) {"Error": "class org.tron.json.JSONException : <解析器信息>"}{"Error": "class org.tron.core.services.http.JsonFormat$ParseException : <解码器信息>"}
GET / POST 其他异常 {"Error": "<exceptionClass> : <message>"}