0

我目前正在运行一个完整的节点,并试图循环一些事务。每当我使用 Web3j 这样做并使用时EthBlock.TransactionObject,我都会得到一个包含合同的交易(就像这个)并使用.getTo()它返回一个空值的函数。有什么办法可以找回合约地址吗?

编辑:这是我用来获取交易的代码

EthBlock.Block block = web3.ethGetBlockByNumber(DefaultBlockParameter.valueOf(BigInteger.valueOf(1397553)), true).send().getBlock();
List<EthBlock.TransactionResult> transactionResults = block.getTransactions();
transactionResults.forEach(tx -> {
   EthBlock.TransactionObject transaction = (EthBlock.TransactionObject) tx.get();
   System.out.println(transaction.getCreates());
});

这将返回一个“空”

4

1 回答 1

0

当交易创建合约时,该to字段在设计上是空的(以太坊网络)。

要获取交易创建的合约地址,请使用getCreates()方法。

于 2021-04-06T14:34:14.543 回答