繁体   English   中英

Web3j:如何获取以太坊交易信息(Java不是JS)

[英]Web3j: How to get Ethereum transaction information (Java not JS)

我刚刚开始使用Web3j并且遇到了一些基本问题。

我已成功找到如何获取EthBlock并检索其中的所有信息。 我想查看块中的事务列表,但我无法弄清楚如何。

我可以打电话

 List<TransactionResult> transactions = ethBlock.getBlock().getTransactions();

我应该能够查看此列表并获取有关每个事务的信息。 但是,我似乎只能使用TransactionResult将其转换为非常无用的TransactionHash。 我想要的是一个TransactionObject,我可以从中提取大量信息。

我如何获得真实的交易数据?

而另一方面说明:有什么理由似乎没有任何Web3j JavaDoc?

它就在那里,因为它们如何使用泛型,它只会让人感到困惑。 下面的示例将输出LATEST块中每个事务的发送方:

List<EthBlock.TransactionResult> txs = web3j.ethGetBlockByNumber(DefaultBlockParameterName.LATEST, true).send().getBlock().getTransactions();
txs.forEach(tx -> {
  EthBlock.TransactionObject transaction = (EthBlock.TransactionObject) tx.get();

  System.out.println(transaction.getFrom());
});

请记住,这是TransactionObject (发送的tx),而不是包含被挖掘的tx结果的结果TransactionReceipt

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM