首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >对于不符合智能合同的呼叫,是否有多个呼叫等效?

对于不符合智能合同的呼叫,是否有多个呼叫等效?
EN

Ethereum用户
提问于 2022-05-23 18:32:58
回答 1查看 639关注 0票数 0

我有一个数组,里面有很多事件。我从这些事件中获得了块号,但我也需要block.timestamp,它不是在events中返回的,而是通过获取块返回的。所以我想做这样的事情:

代码语言:javascript
复制
  const getTimestamps = async (events) => {
  const ethcallProvider = new Provider(provider);
  await ethcallProvider.init();

  const contractCalls = events.map((event) =>
     provider.getBlock(event.blockNumber)
  );
  console.log(contractCalls);
  const results = await ethcallProvider.all(contractCalls);
  //console.log(results);
  return results;
};

我有数百个事件,所以能够使用类似于多个的东西来在一个调用中运行所有的getBlock函数是很有帮助的。或者,如果有一个多元的常用词,可以这样做,这也是可行的。谢谢!

EN

回答 1

Ethereum用户

发布于 2022-05-25 11:46:02

您可以使用ethers.providers.JsonRpcBatchProvider,它的JS相当于JsonRpcProvider。它只是将请求分批处理,以便在一个网络请求中将多个请求一起发送,而不是在其他情况下单独发送网络请求。您可以找到它的文档,这里

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

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

复制
相关文章

相似问题

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