JavaScriptで利用する小さなAPI|基準日からの経過日数算出
2020年1月13日
概要
kintoneのカスタマイズでJavaScriptを利用する機会が多いので、JavaScriptで利用できるWebサービスをちょこちょこ作っていこうかと思います。
Node.jsの勉強とブログネタも兼ねて。
基準日からの経過日数算出
記念日的なものは誰しもあると思います。
あれからどれ位たったのか知りたい場合とかありませんか?結婚記念日とか。
そういう話からこのAPIを作ったのですが。。。
正直な話、Moment.jsを使えばJavaScriptだけで作れますが、あえてサーバサイドのNode.jsで処理を書いてます。勉強、勉強。。。
JavaScript側はfetch()とかでクエリパラメータを投げれば良いので楽ではあるのですがね。
利用方法
使い方は、以下のように外部サイトを参照する形になります。
クエリパラメータ「from」にFrom日付、「to」にTo日付をYYYYMMDDで指定してアクセスしてください。
https://cjawebservice.herokuapp.com/api/keika?from=YYYYMMDD&to=YYYYMMDD
以下のようなJSONデータが取得できます。
{message: '〇年〇ヶ月〇日 経過'}
こんな感じにHTMLに埋め込んで使います。
<table> <tbody> <tr> <td width='25%'>記念日</td><td width='25%'>From日付</td><td width='25%'>To日付</td><td width='25%'>経過日数</td> </tr> <tr> <td>本能寺の変</td><td>1582/06/21</td><td>2020/01/12</td><td id='keika'></td> </tr> </tbody> </table> <script> var from = '15820621'; var to = '20200112'; var url = 'https://cjawebservice.herokuapp.com/api/keika?'; fetch(url + 'from=' + from + '&to=' + to) .then(res => res.json()) .then(response => { console.log(response); jQuery('#keika').text(response.message); }); </script>
結果
こんな感じです。
記念日 | From日付 | To日付 | 経過日数 |
本能寺の変 | 1582/06/21 | 2020/01/12 |
サンプル
フォームと組み合わせて以下のように使ってみても良いかと。
cjawebservice.herokuapp.com
経過日数算出
リポジトリ
以下にNode.jsのソースと上記サンプルページを保存してあるので興味があればどうぞ。