首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在没有使用Web3的情况下获得合同的过去事件?

在没有使用Web3的情况下获得合同的过去事件?
EN

Ethereum用户
提问于 2019-05-29 12:28:57
回答 1查看 876关注 0票数 1

我正在构建一个简单的资源管理器,我想列出由契约发出的事件。由于我不知道每个合同的ABI,是否有可能从使用Web3的合同中获得过去的事件?

如果我知道ABI,我会这样做:

代码语言:javascript
复制
var myContract = new web3.eth.Contract(ABI, address);

myContract.getPastEvents('allEvents', {
    filter: {...},
    fromBlock: 0,
    toBlock: 'latest'
}, (error, events) => { console.log(events); })
.then((events) => {
    console.log(events) // same results as the optional callback above
});

但是,当然,没有它的接口,我不能实例化合同。我想知道像以太扫描这样的探险家是怎么做到的。

EN

回答 1

Ethereum用户

回答已采纳

发布于 2019-05-29 13:59:16

您可以使用'web3.eth.getPastLogs({fromBlock:,地址:},(err,结果)‘)。

结果将包含事件在“主题”中的对象,但是没有ABI就无法解码事件。

编辑:主题是一个数组,第一个元素是事件名,下面的元素是参数

票数 1
EN
页面原文内容由Ethereum提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://ethereum.stackexchange.com/questions/71233

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档