From 6576dfa555e28d78968e1b37829b458238f778b8 Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Mon, 06 Jun 2022 15:50:29 +0800
Subject: [PATCH] fix

---
 src/main/java/cc/mrbird/febs/dapp/chain/EthService.java |   53 ++++++++++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 46 insertions(+), 7 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/dapp/chain/EthService.java b/src/main/java/cc/mrbird/febs/dapp/chain/EthService.java
index 75556ac..a30bf95 100644
--- a/src/main/java/cc/mrbird/febs/dapp/chain/EthService.java
+++ b/src/main/java/cc/mrbird/febs/dapp/chain/EthService.java
@@ -1,9 +1,10 @@
 package cc.mrbird.febs.dapp.chain;
 
+import cn.hutool.core.util.HexUtil;
 import cn.hutool.core.util.StrUtil;
 import cn.hutool.http.HttpUtil;
 import com.alibaba.fastjson.JSONObject;
-import org.apache.commons.lang3.StringUtils;
+import org.bouncycastle.jcajce.provider.digest.SHA3;
 import org.web3j.abi.FunctionEncoder;
 import org.web3j.abi.FunctionReturnDecoder;
 import org.web3j.abi.TypeReference;
@@ -11,15 +12,12 @@
 import org.web3j.abi.datatypes.Function;
 import org.web3j.abi.datatypes.Type;
 import org.web3j.abi.datatypes.generated.Uint256;
-import org.web3j.crypto.Credentials;
-import org.web3j.crypto.RawTransaction;
-import org.web3j.crypto.TransactionEncoder;
+import org.web3j.crypto.*;
 import org.web3j.protocol.Web3j;
 import org.web3j.protocol.core.DefaultBlockParameterName;
+import org.web3j.protocol.core.Request;
 import org.web3j.protocol.core.methods.request.Transaction;
-import org.web3j.protocol.core.methods.response.EthCall;
-import org.web3j.protocol.core.methods.response.EthGetTransactionCount;
-import org.web3j.protocol.core.methods.response.EthSendTransaction;
+import org.web3j.protocol.core.methods.response.*;
 import org.web3j.protocol.http.HttpService;
 import org.web3j.utils.Convert;
 import org.web3j.utils.Numeric;
@@ -28,6 +26,7 @@
 import java.math.BigDecimal;
 import java.math.BigInteger;
 import java.math.RoundingMode;
+import java.nio.charset.StandardCharsets;
 import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.List;
@@ -55,6 +54,28 @@
 
         HttpService service = new HttpService(url);
         web3j = Web3j.build(service);
+    }
+
+    public static void main(String[] args) throws IOException {
+        HttpService service = new HttpService("https://bsc-dataseed1.ninicoin.io");
+        Web3j web3j = Web3j.build(service);
+        long start = System.currentTimeMillis();
+        Request<?, EthBlockNumber> request = web3j.ethBlockNumber();
+        EthBlockNumber send = request.send();
+        BigInteger bigInteger = Numeric.decodeQuantity(send.getResult());
+        long end = System.currentTimeMillis();
+        System.out.println(end - start);
+
+//        String address = "0x971c09aa9735eb98459b17ec8b48932d24cbb931";
+//        String nonce = "0x1d5f7444107bc02e980deda39d0fce21b06c9da4233a19cb11124cb5bfefc9ec";
+//        String sign = "0x8f92cee24906122e26c3cc6cbd72f851cfe2c9574aa03bf3371e5d506fbec68b2ad22bbbc19b00ed21d26ab5a6871507831e2c902d8ed8c33301addc2b57a7731b";
+//
+//        String result = address + ":" + nonce + ":" + sign;
+//        System.out.println(Hash.sha3(result));
+
+
+//        Web3Sha3 send = web3j.web3Sha3(result).send();
+//        System.out.println(1);
     }
 
     @Override
@@ -255,4 +276,22 @@
         JSONObject result = JSONObject.parseObject(jsonObject.getString("d"));
         return result.getIntValue("recordsTotal");
     }
+
+    @Override
+    public BigInteger blockNumber() {
+        Request<?, EthBlockNumber> request = web3j.ethBlockNumber();
+        EthBlockNumber send = null;
+        try {
+            send = request.send();
+        } catch (IOException e) {
+            e.printStackTrace();
+        }
+
+        if (send != null) {
+            return Numeric.decodeQuantity(send.getResult());
+        }
+
+        return new BigInteger("1");
+    }
+
 }

--
Gitblit v1.9.1