更新时间:2024-03-06 GMT+08:00
eth_getLogs
简介
返回与给定过滤器对象匹配的所有日志的数组。该API所消耗的计算单元为120。
参数说明
参数 |
类型 |
说明 |
---|---|---|
address |
String |
可选参数,合约地址(20字节)或日志应源自的地址列表。 |
fromBlock |
String |
可选参数,默认为“latest”,十六进制区块号,或字符串latest,earliest或pending。 |
toBlock |
String |
可选参数,默认为“latest”,十六进制区块号,或字符串latest,earliest或pending。 |
topics |
String |
可选参数,32 字节 DATA 主题数组。主题与顺序相关。 |
blockhash |
String |
可选参数,将返回的日志限制为 32 字节哈希中引用的单个块blockHash。使用blockHash相当于设置fromBlock和 toBlock中引用的区块均为blockHash所对应的区块。如果blockHash出现在过滤条件中,则fromBlock和toBlock都不能够被设置。 |
返回值
日志对象数组,如果自上次轮询以来没有任何更改,则为空数组。日志对象包含以下键及其值:
- removed:若日志由于链重组而被删除,则返回true。如果它是有效的日志,则返回false。
- logIndex:块中日志索引位置的十六进制。当它是待处理(Pending)日志时返回NULL。
- transactionIndex:创建日志的事务索引位置的十六进制。当它是待处理(Pending)日志时返回NULL。
- transactionHash: 32 字节。创建此日志的事务的哈希值。当它是待处理(Pending)日志时返回NULL。
- blockHash: 32 字节。该日志所在块的哈希值,当它是待处理(Pending)日志时返回NULL。
- blockNumber:该日志所在的块号,当它是待处理(Pending)日志时返回NULL。
- address: 20 字节。该日志的来源地址。
- data:包含一个或多个 32 字节非索引日志参数。
- topics:包含 0 到 4 个索引日志参数的数组,每个 32 字节。在 Solidity 中,第一个主题是事件签名的哈希值(例如 Deposit(address,bytes32,uint256)),除非您使用匿名说明符声明事件。
请求样式
curl https://your-http-endpoint/v1/<API-KEY> \ -X POST \ -H "Content-Type: application/json" \ -d '{"jsonrpc":"2.0","method":"eth_getLogs","params":[{"blockHash": "0x7c5a35e9cb3e8ae0e221ab470abae9d446c3a5626ce6689fc777dcffcab52c70", "topics":["0x241ea03ca20251805084d27d4440371c34a0b85ff108f6bb5611248f73818b80"]}],"id":74}'
父主题: 共享版