うずらウォレットの蛇口一覧ページを作りました。
うずらウォレットってなに?
ソーシャル連携で簡単に作れる仮想通貨のマルチウォレットです。
なんかすごい前に書いたことがあるような。
リンク:公式ページ、公式紹介ブログ(うずらウォレットとは?)
蛇口一覧ページって?
https://narumium.net/crypto/uzuras
うずらウォレットにはTwitterをはじめとしたSNSやWeb上で何かすることで仮想通貨を得ることが出来ます。
色んな人が蛇口を付けていますが、だれがどんなことに対して蛇口を付けているかはぱっと見ではわかりません。1年くらい気付かれずにいるものもあります。
うずらウォレットAPIというものが公開され、だれでも蛇口情報を見れるようになっていたので情報を切り取って多少見やすくしたものがこちらです。
表示に多少時間がかかるのと、User名が遅れて表示されるのはAPI的な制限です。
うずらウォレットAPI について
ちょっと使い方について解説めいたことを書きたかったんですが、自分では力不足でした。なかなかレベルの高いAPIなので少し突っ込ませてほしい。
https://api.uzuras.net/
エンドポイント:https://api.uzuras.net/api/v2
サブドメインを切っていて/api/version/
で指定する好きな形です。
エンドポイントに対して関数と引数をクエリパラメータで指定するようです。
コイン一覧を取得するAPI
試しに最初に使いそうなAPIを使ってみます。
https://api.uzuras.net/api/v2?function=GetCoinList&args={}
ここで&args={}
がないと-1
とだけ返ってきます。
指定パラメータが全て任意で省略可でも引数として指定する必要があるようです。
こちらはuzuraウォレットで使えるコイン一覧の情報が出てきます。
コインの有効桁数なんかを参照できるので何かするには必須になりそうなAPIですが、コイン情報のIconDataUrl
という部分がなかなか目を引きます。
まさかAPIでDataURLを返すものがあるとは。
アイコンだし大したことないと思われるかもしれませんが、このAPIの返すJSONサイズは5MBです。最初に読み込む必要のある情報なので完全にボトルネックです。
全体的なドキュメント不足
APIを使わせていただいて言うのもなんですが全般的にかなり難易度が高いです。
全ての関数に説明がないのはこの際いいです。関数名で察します。
返値について記載がないのも試せばいいだけなので大丈夫です。
せめてパラメータに何を指定すればいいかは書いていて欲しいです。
(現状でもトライエラーを頑張れば使える状態ではある)
命名規則とは…
最後に逆にこれで動いてるの凄いなと思ったところです。
コメントがないことや型の指定がないことに驚きますか?気にしたら負けです。
スネークケース(targetuser_id
)、パスカルケース(BoolInSettings
)、ただの連結(usingcache
)、キャメルケース(coinId
)がこの小さな空間に混在している。
ここまであるとケバブケースがないのが残念。
この環境でバグらずに動いてるのはすごいと思うけど、バグの温床になりそう。