| | |
| | | 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; |
| | |
| | | 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.EthBlockNumber; |
| | | 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; |
| | |
| | | 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; |
| | |
| | | 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()); |
| | | System.out.println("0x113d6d0"); |
| | | 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 |
| | |
| | | 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"); |
| | | } |
| | | |
| | | } |