使用回数制限があるAPIを無料枠でなんとかしのいだ話


はじめに

以前、LCNEMで、日本円、ドルレートで仮想通貨の価格を表示したいという要件がありましたので、その時の開発過程をご説明します

要件

  • 日本円、ドルレートで、仮想通貨の価格を表示したい
  • 仮想通貨の価格のAPI には、一日の単位の使用回数制限あり

解決方法

定期実行によって叩くAPIの回数を制限すればいいということになりましたので、

  • 定期実行
  • frontからそれを取得するためのAPIを作る

ということになりました。

実装方法

CloudSchedular

使ってみた感想

とにかく定期実行の設定がGUIでできて、とても簡単でした。所感、設定時間は1min30secくらいでした。

設定例

Cloud Functions

使ってみた感想

基本的にjsを知っていれば、cloud functionsはすぐに書けるので、ここも難なくかなと思います。
(ただ、私自身開発した時はasync awaitの使い方もままならなかったので、少し苦労しました。)

Cloud FireStore

使ってみた感想

NoSQLなので、少し覚えることはありますが、NoSQLの中でもRDSに寄せてる部類の方なので比較的使い慣れやすかったです。また、GUIで設定できるのも良かったです。

Rulesの実装

match /rates/rate {
      allow read;
    }

DataTypeの実装

rates/ {
        BTC: number
        USD: number
        JPY: number
        ETH: number
        XEM:numbr