NEMAPIをGo言語で叩く(1)
現在Go言語を勉強中です。
一通り機能を学べたので、練習としてNEMのAPIを叩く簡単なコードを作成しました。
ソースコード
package main
import (
"fmt"
"io/ioutil"
"net/http"
)
func main() {
resp, err := http.Get("http://alice2.nem.ninja:7890/heartbeat")
if err != nil {
fmt.Println(err)
return
}
defer resp.Body.Close()
execute(resp)
}
func execute(response *http.Response) {
body, err := ioutil.ReadAll(response.Body)
if err != nil {
fmt.Println(err)
return
}
fmt.Println(string(body))
}
実行結果
{"code":1,"type":2,"message":"ok"}
解説
ソースコードは殆ど参考元そのままです。
http.Get()で指定URLのレスポンスを取得し、execute()でbody要素を読み出し
文字列として出力しています。deferを利用し、最後にきちんとcloseします。
今回のコードではスーパーノードのハートビートを確認しました。
実行時点では正しく動作していることがわかります。