0

我有一个智能合约方法“transferFrom”,它最后会发出一个事件“EventTransf”。从使用 web3j 的 java 程序中,我调用了这样的方法并获得了收据。

TransactionReceipt tr=contract.transferFrom(from,to, tk).send();

现在,我将从这个方法调用中读取所有发出的事件。我对 web3j 过滤器有疑问,但我只对此调用中发出的事件感兴趣。该代码也应与 infura 一起使用。

4

1 回答 1

0

解决了。我需要使用 tr.getLogs() 并且对于每个 Log 对象,我调用

  List<Type> args = FunctionReturnDecoder.decode(
              log.getData(), Contract.Event_Type.getParameters());
于 2020-06-08T09:37:28.593 回答