eth_getLogs

返回与给定过滤器对象匹配的所有日志数组。

返回与给定过滤器对象匹配的所有日志数组。

从 GreatVoyage-v4.8.2 起,每条日志还包含 blockTimestamp,其值为区块时间的 Unix 秒级时间戳,按 JSON-RPC QUANTITY 规则以十六进制字符串返回。节点默认将查询区块跨度限制为 5000;该限制由 node.jsonrpc.maxBlockRange 配置,托管网关的限制可能不同。

参数

  1. Object - 过滤器选项,包含以下字段:

    字段类型描述
    fromBlockQUANTITY|TAG(可选,默认值:"latest")搜索日志的起始区块号;支持 latestearliestfinalized,不支持 pendingsafe
    toBlockQUANTITY|TAG(可选,默认值:"latest")搜索日志的截止区块号;标签支持范围同 fromBlock
    addressDATA|Array, 20 Bytes(可选)一个合约地址或地址列表,日志必须来自这些地址。
    topicsDATA[](可选)32 字节 DATA 主题数组。主题顺序敏感,每个主题也可以是表示"或"选项的 DATA 数组。
    blockHashDATA, 32 Bytes(可选)将返回的日志限定为由此 32 字节哈希标识的单个区块。使用 blockHash 等同于将 fromBlocktoBlock 均设为该区块的区块号。若提供了 blockHash,则不得同时包含 fromBlocktoBlock

address 数组默认最多包含 1000 项;topics 最多包含 4 个位置,每个位置的 OR 候选默认最多 1000 项。超过相应的 maxAddressSizemaxSubTopics 配置会返回 JSON-RPC -32602

示例

请求

curl -X POST https://api.shasta.trongrid.io/jsonrpc \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "method": "eth_getLogs",
    "params": [
      {
        "address": "0x42a1e39aefa49290f2b3f9ed688d7cecf86cd6e0",
        "fromBlock": "0x3E8A920",
        "toBlock": "0x3E8A984",
        "topics": [
          "0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef",
          "0x0000000000000000000000001975fbea3496424a88de2a147d76baa34a3d1b93",
          "0x000000000000000000000000c3abfbceb364febe625662a9af6add366df58f81"
        ]
      }
    ],
    "id": 1
  }'

响应

以下响应展示 GreatVoyage-v4.8.2 节点返回的日志结构。如果托管网关尚未升级到该版本,响应中可能暂无 blockTimestamp

{
  "jsonrpc": "2.0",
  "id": 1,
  "result": [
    {
      "address": "0x42a1e39aefa49290f2b3f9ed688d7cecf86cd6e0",
      "blockHash": "0x0000000003e8a947c68442f90bb271d2f7b1b8bb86f6a78a1d4f2d53ab92d81d",
      "blockNumber": "0x3e8a947",
      "blockTimestamp": "0x6a26903f",
      "data": "0x0000000000000000000000000000000000000000000000000000000000736201",
      "logIndex": "0x0",
      "removed": false,
      "topics": [
        "0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef",
        "0x0000000000000000000000001975fbea3496424a88de2a147d76baa34a3d1b93",
        "0x000000000000000000000000c3abfbceb364febe625662a9af6add366df58f81"
      ],
      "transactionHash": "0xba60eb123d557f6b9ffefae573499b9d65ee15430a55b24cb28ef4ab2118f814",
      "transactionIndex": "0x1"
    },
    {
      "address": "0x42a1e39aefa49290f2b3f9ed688d7cecf86cd6e0",
      "blockHash": "0x0000000003e8a98485e380e81c900ce531d124381f8a9cb9e7572b2b6a1cb768",
      "blockNumber": "0x3e8a984",
      "blockTimestamp": "0x6a2690f6",
      "data": "0x0000000000000000000000000000000000000000000000000000000000736201",
      "logIndex": "0x0",
      "removed": false,
      "topics": [
        "0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef",
        "0x0000000000000000000000001975fbea3496424a88de2a147d76baa34a3d1b93",
        "0x000000000000000000000000c3abfbceb364febe625662a9af6add366df58f81"
      ],
      "transactionHash": "0xab71e8940566476af8ba7663b53f938173968add3fae77aa4a899e3facdfab3f",
      "transactionIndex": "0x0"
    }
  ]
}