#はじめに
NEMのAPIを勉強するために、Python3を使ってコードを書くことにしました。
(Pythonも初めて触るので、Pythonも勉強していきます)
APIの和訳が以下のサイトにあるため、こちらを読みなが勉強していきます。
New Economy Movement(NEM) APIマニュアル和訳
https://www.pr1sm.com/crypto-coin/nem-nis-api-documentation-in-japanese/
扱いやすいと噂のNEM APIですが、コードを見たことがない人はピンとこないと思います。私が学習した内容をメモする目的もありますが、サンプルコードを掲載していきますので、どれぐらい簡単なのか知ってもらえれば幸いです。
また、私が間違った理解もあると思いますので、見た誰かが指摘してくれたらいいなぁっていう邪な気持ちもあったりします(笑)
ちなみに、実行環境はPAIZAを使う予定です。
https://paiza.io/ja
#NEMって何?って方へ
トレストさん(twitterアカウント:@TrendStream)のサイトが非常にわかりやすいです。
https://www.cryptostream.jp/nem_xem/
以下、概要を引用します。
NEMはもともとNew Economy Movement(新しい経済運動)の略称でした。現在はその略称ではなくNEMという固有名詞であるとされています。金銭的な自由、分散化、平等、および連帯感の原則に基づき、新しい経済圏の創出を目標としてはじまった仮想通貨(暗号通貨)のプロジェクトです。
2014年1月19日、bitcointalk.orgのフォーラムにてutopianfutureというハンドルネームの人物により企画が持ち上がり、2015年3月31日に公開されました。
ちなみに最初のタイムスタンプは2015年3月29日なのでその日が"誕生日"です。
(引用元)https://www.cryptostream.jp/nem_xem/
#NEM APIを叩く方法
APIを叩くには、NIS(NEMインフラストラクチャーサーバー)へアクセスします。
NISはHTTP GETとPOSTの両方のリクエストを受け付けています。
HTTP GETリクエストはブラウザから実行され次の形式になります。
http://<サーバー名 or IPアドレス>:7890< APIパス >?< APIのパラメータ >
なんだか難しいので、てっとり早く試すために、以下のURLを開いてください。
http://23.228.67.85:7890/heartbeat
URLの部分 | 解説 |
---|---|
23.228.67.85 | NISのIPアドレスです。単にノードって呼ばれたりもします。 |
7890 | NISへはアクセスへは7890ポートを使います |
heartbeat | NISに「生きているか?」と問い合わせるAPIです |
NISが生きていれば以下の結果が帰ってきます。 |
{"code":1,"type":2,"message":"ok"}
※返ってこなかったら別のノードを試してみよう
JSON形式のデータなんですが、最初はなんのことやらよくわからないと思います。
JSON??返ってきた値はなんだ??とかとか。
私も勉強して次回から解説しようと思います。
ノードが分からない人は、NanoWalletで選択できるノードリストのどれかを指定すれば良いでしょう。
以下の画像はテストネットのノード選択画面です。
これをPython3を使った場合、どういうソースコードになるか以下に掲載します。
import requests
import json
r = requests.get('http://<サーバー名 or IPアドレス>:7890/heartbeat').json()
print(r)
HTTP GETリクエストを使って、APIを叩いています。
URLを開いた場合と同じ結果になると思います。
#NEM APIを叩く流れのまとめ
1.NISへHTTP GET/POSTクエストを使ってNEM APIを叩く
2.NISからJSON形式のデータが返ってくる
3.JSON形式のデータをプログラム内で活用する
この3ステップで可能でした。
次回からはJSON形式のデータの取り出し方も交えてNEM APIを解説してきます。