Web3j
如何使用 web3j java API 獲取最新的塊號
我向網路詢問我要跟踪的地址的目前餘額。之後,我想在我的程序/伺服器開始時檢測/收聽從最新塊號開始的傳入存款。現在的問題是如何找到當時最新的區塊號?看起來 web3js(java 腳本)中有一個 API,但 web3j(java)中沒有。我通過 infura 節點連接到 rinkeby 測試網。
這是最簡單的方法
Web3j web3j = Web3j.build(new HttpService("https://rinkeby.infura.io/v3/.......")); Block block = web3j.ethGetBlockByNumber(DefaultBlockParameterName.LATEST, false).send().getBlock(); System.out.println(block.getNumber().toString());
這是我獲取最新塊號的實現。我使用https://docs.web3j.io/getting_started/#gradle設置項目
import org.web3j.protocol.Web3j; import org.web3j.protocol.core.methods.response.EthBlockNumber; import org.web3j.protocol.http.HttpService; import java.util.concurrent.ExecutionException; public class App { public static void main(String[] args) throws ExecutionException, InterruptedException { Web3j web3 = Web3j.build(new HttpService(__rpcURL__)); EthBlockNumber result = web3.ethBlockNumber().sendAsync().get(); System.out.println(" result: " + result.getBlockNumber().toString()); } }