メインコンテンツへスキップ
package main

import (
	"fmt"
	"io/ioutil"
	"log"
	"net/http"
)

func http_example() {

	/*
		次の JSON を URL エンコードし、HTTP クエリ文字列の query フィールドに設定します
		{"trace" : "go_http_test1","data" : {"code" : "700.HK","kline_type" : 1,"kline_timestamp_end" : 0,"query_kline_num" : 2,"adjust_type": 0}}

		注意:
		github: https://github.com/alltick/realtime-forex-crypto-stock-tick-finance-websocket-api
		Token 申請:https://alltick.co
		下記 URL の testtoken をご自身の Token に置き換えてください
		外国為替、暗号通貨、貴金属の API アドレス:
		https://quote.alltick.co/quote-b-api
		株式 API アドレス:
		https://quote.alltick.co/quote-stock-b-api
	*/
	url := "https://quote.alltick.co/quote-stock-b-api/kline"
	log.Println("リクエスト URL:", url)

	req, err := http.NewRequest("GET", url, nil)
	if err != nil {
		fmt.Println("Error creating request:", err)
		return
	}

	q := req.URL.Query()
	token := "testtoken"
	q.Add("token", token)
	queryStr := `{"trace":"1111111111111111111111111","data":{"code":"AAPL.US","kline_type":1,"kline_timestamp_end":0,"query_kline_num":10,"adjust_type":0}}`
	q.Add("query", queryStr)
	req.URL.RawQuery = q.Encode()
	// リクエストを送信
	resp, err := http.DefaultClient.Do(req)
	if err != nil {
		fmt.Println("Error sending request:", err)
		return
	}
	defer resp.Body.Close()

	body2, err := ioutil.ReadAll(resp.Body)

	if err != nil {

		log.Println("レスポンスの読み取りに失敗:", err)

		return

	}

	log.Println("レスポンス内容:", string(body2))

}

AllTick 公式サイト

公式サイト:https://alltick.co/