NIFTY Cloudのモバイルバックエンドにデータをアップロードしてみる話(JavaScript編)
今度はJSで書きます。
前回はAndroidからmBaaSに絡む話でした
Arduinoやら単純なマイコンは
あまりインターネット接続性がない。
Etherモジュールをつけたり、
Wi-Fiシールドを購入すると結構な額になる。
前回は、Android端末をいわゆる
インターネットへのゲートウェイとして、
センサーのデータをmBaaSへ
アップすることを想定して実装しました。
Raspberry Piならインターネット接続が容易に可能
とはいえ、Arduinoにも電力を供給して、
Android端末にも電力を供給して、
AndroidとArduinoはBTやら、
OTGで繋いだりするとなると、
結構めんどくさい。
というわけで、現実解として存在するのが
Raspberry Pi。
今回は、RPi上でJSを動かして、
GPIOにつながったセンサーデータを
そのままmBaaSにアップロードするような
ケースを想定して実装してみる。
サンプルコードはオフィシャルを見て下さい(笑)
ドキュメント : 開発者向けドキュメント | ニフティクラウド mobile backend
この辺を見れば、きっと幸せになれます。
JS向けのSDKもGitHubに公開されてます。
$ npm install ncmb -S
npmコマンドでインストール完了。
早すぎます。
初期化もAndroid同様、非常にシンプル。
var NCMB = require("ncmb"); var ncmb = new NCMB(appKey, clientKey);
あまりスクリプト言語に慣れてないので、
ちょっと気持ち悪いですが、シンプルなので
非常にわかりやすいです。
JSは正直良くわからないので、
合ってるかわかりませんが、
とりあえず現在時刻と乱数を
mBaaSにアップするコードを書いてみました。
(function () { var appKey = "hogehoge"; var clientKey = "fugafuga"; var NCMB = require("ncmb"); var ncmb = new NCMB(appKey, clientKey); var JsData = ncmb.DataStore("jsdata"); var jsData = new JsData(); jsData.set("date", new Date().getTime()) .set("value", Math.floor(Math.random() * 11)) .save() .then(function (jsData) { console.log("success"); }) .catch(function (error) { console.log(error); }); })();
短い。
Androidもかなり短めのコードで完結できましたが、
JSもUI部分がないのでかなりシンプルなコードになりました。