http://www.kittyexplorer.com/prices/和https://kittysales.herokuapp.com/页面显示的是销售价格和猫的ID。如何以编程方式实现这样的功能?
我已经搜索了GitHub,但是那里的代码不允许访问这样的销售历史记录。我还查看了https://etherscan.io/的事务详细信息,但没有获得有关cat ID的信息。
发布于 2017-12-15 23:04:35
http://web3js.readthedocs.io/en/1.0/web3-eth-contract.html#getpastevents
小猫拍卖合同在每一次成功的拍卖中都会发出一个"AuctionSuccessful“事件。您可以使用web3.js使用类似于以下代码的代码来获得过去的事件:
var cksale = web3.eth.contract(saleAbi).at("0xb1690C08E213a35Ed9bAb7B318DE14420FB57d8C")
cksale.getPastEvents('AuctionSuccessful', { fromBlock: 4605167 }, (error, events)=>{
console.log(`Got some sales: ${JSON.stringify(events)}`)
})注意: Cryptokitties部署在块4605167上,所以在检查块之前没有比事件更早的点。
搜索过去的事件需要一段时间,最好是将其分成10/100个块间隔,而不是试图在一个巨大的调用中获取所有事件。
https://ethereum.stackexchange.com/questions/33509
复制相似问题