eth_getLogs
网络: Base · 主网 · Chain ID 8453(0x2105)
计为 1 个 Request。 计费规则见 Request Counting。
返回与过滤器对象匹配的日志数组。这是索引和监听合约事件时最常用的方法之一。
参数
Object— 过滤配置:字段 类型 说明 fromBlock QUANTITY|TAG 起始区块(默认 "latest")toBlock QUANTITY|TAG 结束区块(默认 "latest")address DATA|Array 要过滤的合约地址 topics Array Topic 过滤条件(事件索引参数) blockHash DATA 限定单个区块
返回
Array — 日志对象数组:
| 字段 | 类型 | 说明 |
|---|---|---|
| address | DATA | 产生日志的合约地址 |
| topics | Array<DATA> | 已索引事件参数 |
| data | DATA | 未索引事件参数 |
| blockNumber | QUANTITY | 区块号 |
| transactionHash | DATA | 交易哈希 |
| logIndex | QUANTITY | 区块内日志索引 |
请求
{
"jsonrpc": "2.0",
"method": "eth_getLogs",
"params": [
{
"fromBlock": "0x134E800",
"toBlock": "0x134E810",
"address": "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
"topics": ["0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef"]
}
],
"id": 1
}示例过滤单个代币合约的 ERC-20 Transfer 事件。请把 address 和区块范围换成 Base 上的值。
Topic
0xddf252ad...是Transfer(address,address,uint256)的 keccak-256 哈希。
代码示例
curl -X POST https://base-rpc.blockreq.com/v1/rpc/public \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","method":"eth_getLogs","params":[{"fromBlock":"0x134E800","toBlock":"0x134E810","address":"0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48","topics":["0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef"]}],"id":1}'