import (
"encoding/json"
"io/ioutil"
"net/http"
"html/template"
"log"
"fmt"
)
func bitflyerHandler(w http.ResponseWriter, r *http.Request){
uri := "https://api.bitflyer.com/v1/getticker"
req, _ := http.NewRequest("GET", uri, nil)
client := new(http.Client)
resp, _ := client.Do(req)
defer resp.Body.Close()
byteArray, _ := ioutil.ReadAll(resp.Body)
var ticker Ticker
json.Unmarshal([]byte(byteArray),&ticker)
t := template.Must(template.ParseFiles("/home/vagrant/go/src/github.com/me/sample/src/bitflyer.html.tpl"))
if err := t.ExecuteTemplate(w, "bitflyer.html.tpl", fmt.Sprintf("%.0f\n", ticker.Ltp)); err != nil {
log.Fatal(err)
}
}
func main() {
// fmt.Printf("%.0f\n",ticker.Ltp)
http.HandleFunc("/bitflyer/", bitflyerHandler)
log.Fatal(http.ListenAndServe(":8080",nil))
}
type Ticker struct {
Code string `json:"product_code"`
Ltp float64 `json:"ltp"`
}
bitflyer.html.tpl
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
{{ . }}
</body>
</html>

なるほど、これをcoin marketでやるか