1. 程式人生 > >使用 java 根據 insight-api 獲取 BTC一些基本資訊

使用 java 根據 insight-api 獲取 BTC一些基本資訊

開始

npm install -g [email protected]
bitcore create mynode
cd mynode
bitcore install insight-api
bitcore install insight-ui
bitcore start

啟動成功可以看到頁面

下面使用Java編寫簡單的測試程式碼

package com.king.btc;


import okhttp3.Call;
import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.Response;
import org.junit.Before;
import org.junit.Test;

import java.io.IOException;

/**
 * @author: kingflag
 * @create: 2018-08-09 13:37
 **/

public class BTCTest {

    public OkHttpClient okHttpClient;

    public StringBuffer baseUrl = new StringBuffer("http://127.0.0.1:3001/insight-api");

    @Before
    public void createClient() {
        this.okHttpClient = new OkHttpClient();
    }

    /**
     * 進行get請求
     *
     * @param url 請求url
     * @return
     */
    public String doGetRequest(String url) {
        String result = "";
        Request request = new Request.Builder()
                .url(url)
                .build();
        Call call = okHttpClient.newCall(request);
        try {
            Response response = call.execute();
            result = response.body().string();
        } catch (IOException e) {
            e.printStackTrace();
        }
        return result;
    }

    @Test
    public void getBlockInfo() {
        String siteUrl = "/block/00000000000000cf801e215232b7ac613b5bdfc7ecdf098a3c381b258a3881f3";
        String url = baseUrl.append(siteUrl).toString();
        String result = doGetRequest(url);
        System.out.println(result);
    }

    /**
     * 根據塊的高度獲取塊的Hash
     */
    @Test
    public void getBlockHashByHeight() {
        String siteUrl = "/block-index/0";
        String url = baseUrl.append(siteUrl).toString();
        String result = doGetRequest(url);
        System.out.println(result);
    }

    @Test
    public void getRawBlock() {
        String siteUrl = "/rawblock/00000000000000cf801e215232b7ac613b5bdfc7ecdf098a3c381b258a3881f3";
        String url = baseUrl.append(siteUrl).toString();
        String result = doGetRequest(url);
        System.out.println(result);
    }

    /**
     * 根據日期獲取塊的摘要
     */
    @Test
    public void getBlockSummariesByDate() {
        String siteUrl = "/blocks?limit=3&blockDate=2016-04-22";
        String url = baseUrl.append(siteUrl).toString();
        String result = doGetRequest(url);
        System.out.println(result);
    }

    /**
     * 獲取交易資訊
     */
    @Test
    public void getTransactionByTxidOrRawid(){
        String siteUrl = "/tx/525de308971eabd941b139f46c7198b5af9479325c2395db7f2fb5ae8562556c";
        String url = baseUrl.append(siteUrl).toString();
        String result = doGetRequest(url);
        System.out.println(result);
    }

    /**
     * 根據 地址 獲取交易資訊
     */
    @Test
    public void getTransactionByAddress(){
        String siteUrl = "/addr/mmvP3mTe53qxHdPqXEvdu8WdC7GfQ2vmx5?from=1000&to=2000";
        String url = baseUrl.append(siteUrl).toString();
        String result = doGetRequest(url);
        System.out.println(result);
    }

    /**
     * 根據 地址 獲取 錢包地址屬性
     */
    @Test
    public void getAddressProperties(){
        String siteUrl = "/addr/mmvP3mTe53qxHdPqXEvdu8WdC7GfQ2vmx5/totalReceived";
        String url = baseUrl.append(siteUrl).toString();
        String result = doGetRequest(url);
        System.out.println(result);
    }

    /**
     * 根據 地址 獲取 UTXO
     */
    @Test
    public void getAddressUnspentOutput(){
        String siteUrl = "/addr/mmvP3mTe53qxHdPqXEvdu8WdC7GfQ2vmx5/utxo";
        String url = baseUrl.append(siteUrl).toString();
        String result = doGetRequest(url);
        System.out.println(result);
    }

    /**
     * 根據 多地址 獲取 多個UTXO
     */
    @Test
    public void getMultipleAddressUnspentOutputs(){
        String siteUrl = "/addrs/2NF2baYuJAkCKo5onjUKEPdARQkZ6SYyKd5,2NAre8sX2povnjy4aeiHKeEh97Qhn97tB1f/utxo";
        String url = baseUrl.append(siteUrl).toString();
        String result = doGetRequest(url);
        System.out.println(result);
    }
}

相關推薦

使用 java 根據 insight-api 獲取 BTC一些基本資訊

開始 npm install -g [email protected] bitcore create mynode cd mynode bitcore install insight-api bitcore install insight-ui bitcore s

遙感影象處理 | 採用GDAL讀取影象成功後獲取影象的一些基本資訊和統計資訊(C#)

描述資訊:  const char*  GDALDataset.GetDriver().GetDescription(),通常是影象的格式 影象大小:  影象寬度  int  GDALDataset.GetRasterXSize() &nbs

Java根據HttpServletRequest請求獲取伺服器的IP地址

  以下總結了兩種根據HttpServletRequest請求獲取發出請求瀏覽器客戶端所在伺服器的IP地址方法: 程式碼: import javax.servlet.http.HttpServletRequest; /** * 根據HttpServletRequest請求獲取發出請求瀏覽器客戶端

Java根據HttpServletRequest請求獲取服務器的IP地址

client -i 根據 請求 代碼 brush clas get tip   以下總結了兩種根據HttpServletRequest請求獲取發出請求瀏覽器客戶端所在服務器的IP地址方法: 代碼: import javax.servlet.http.HttpServlet

java根據ip地址獲取詳細地域資訊

網際網路有很多介面可以實現通過ip查詢到具體的位置,如下: 通過淘寶IP地址庫獲取IP位置 1. 請求介面(GET):http://ip.taobao.com/service/getIpInfo.php?ip=[ip地址字串] 2. 響應資訊:(

java根據手機號獲取歸屬地

引言 最近在做一個關於車新聞的專案,讓弄個根據使用者註冊的手機號獲取該使用者手機號所在地區,剛剛聽說感覺特別高大上,這也可以獲得???於是就開始度娘。。查了好多資料漸漸的明白了原理。 原理介紹   (1)先上網差一些能夠查詢手機號獲取歸屬地的API地址。(推薦地址:http

微信開發(1) :網頁授權獲取使用者的基本資訊 實現微信登入(java

微信開發(1) :網頁授權獲取使用者的基本資訊 實現微信登入 由於工作需要,最近進行微信開發,然而微信官方的文件,比較模糊。網上大多數,是PHP做的, 本文 使用java語言開發。(後續更新 java版的 微信開放平臺的 公眾號第三方平臺開發) 準備工

java 根據手機號獲取歸屬地

感謝原文作者@xf吖,本人將歸屬地輸出略作修改 package com; import java.io.InputStream; import java.io.OutputStream; import java.io.OutputStreamWriter; import

Java-根據身份證號獲取年齡,性別,出生日期

不廢話,直接開始擼... 老鐵們給個贊,雙擊6666.... IdcardValidator類:用來校驗身份證的資訊 package com.aidongsports.backstagemanagement.utils; import java.text.Pa

java 根據當天時間 獲取前7天之間的時間 和後多少天的查詢時間,獲娶近幾周 週一的日期

java 根據當天時間 獲取前7天之間的時間  和後多少天的查詢時間 package com.kugou.schedu.service; import java.text.ParseException; import java.text.SimpleDateFormat

java 根據IP地址獲取地理位置

1. 第三方API ps:下面引數ip:218.192.3.42 用於測試 淘寶API:http://ip.taobao.com/service/getIpInfo.php?ip=218.192.3.42 新浪API:http://int.dpool.sina.

java 根據圖片地址獲取到圖片的大小,單位kb或者Mb

/**       * byte(位元組)根據長度轉成kb(千位元組)和mb(兆位元組)       *        * @param bytes       * @return       */

java根據網頁URL獲取正文資訊,並調整正文格式為段落顯示---(兩種方式)

WebCollector的正文抽取API都被封裝為ContentExtractor類的靜態方法。可以抽取結構化新聞,也可以只抽取網頁的正文(或正文所在Element)。需要了解的兩個類 :ContentExtractor : 封裝了正文抽取演算法和正文抽取的API,正文抽取

OpenCV獲取視訊檔案基本資訊

import cv2 cameraCapture = cv2.VideoCapture('./res/test.mp4') print(cameraCapture.get(cv2.CAP_PROP_POS_MSEC)) print(cameraCapture

Python獲取rpm包基本資訊[import rpm]

在進行測試之前,必須先檢查開發的rpm包資料 包括安裝目錄,許可權,檔案結構,是否包含某些檔案等資訊 寫了個指令碼自動化 python的rpm包,在網上資料實在不多,時間倉促,也就簡單看了下 首先,import import rpm 獲取hdr def get_h

Java反射專題學習-獲取類的構造資訊

今天繼續學習反射專題之獲取類的建構函式資訊: 繼上篇部落格來寫:我們單獨寫一個方法來獲取類的建構函式資訊:(通過獲取Constructor) 列印類的建構函式相關資訊 public static void ConMessage(Object object) {

不管使用者是否已經關注,授權獲取使用者的基本資訊

基本資訊包括openid  headming 。。 思路:   1.微信公眾號後臺介面許可權配置吧,需要填寫驗證伺服器的域名例如 wx.xxx.com下面的所有目錄下的都能可以作為接收資訊頁面   2.

用Python對微信好友進行簡單統計分析,獲取好友的基本資訊

早些日子有人問我我的微信裡面有一共多少朋友,我就隨後拉倒了通訊錄最下面就找到了微信一共有多少位好友。然後他又問我,這裡面你認識多少人?這一句話問的我很無語。一千多個好友我真的不知道認識的人有多少。他還緊追著不放了,你知道你微信朋友的男女比例嘛?你知道你微信朋友大部分來自什麼地方嗎? 不知道

微信使用者授權後,獲取使用者的基本資訊

微信開發文件中寫的不夠清楚,做出來的是網頁授權後獲取使用者資訊,不是自己想要的,自己想做的是獲取使用者基本資訊,在開發中總結了一下思路,開始的時候使用的是https://api.weixin.qq.com/sns/oauth2/  去獲取使用者資訊,後來發現獲取的資訊只是網頁

.Net Web Api——獲取客戶端瀏覽器資訊

        第一次接觸到web api,發現這個東西是REST風格的:----        微軟的web api是在vs2012上的mvc4專案繫結發行的,它提出的web api是完全基於RESTful標準的,完全不同於之前的(同是SOAP協議的)wcf和webServ