mBaaSお役立ちブログ

スクリプト機能をリリースしました!

mBaaS上で自由にコードを実行できるスクリプト機能がリリースされました。これでmBaaSを使う時の自由度が大幅にアップするはずです。

ということで今回はまずHello Worldを動かすまでの流れを紹介します。

管理画面にスクリプトメニューが追加!

以下はmBaaSの管理画面ですが、右側にスクリプトというメニューが追加されています。これをクリックすると、次のような画面が表示されます。

スクリプトファイルをアップロードする

実際にアップロードするスクリプトですが、Web上で書くことはできません。予めファイルを作成しておいて、それをアップロードします。なお、言語はNode.jsとなっています。

書き方としては、次の内容が基本になります。

module.exports = function(req, res) {
  // コードを書く
};

そして、レスポンス(res)オブジェクトに対してレスポンスコードや内容を設定して返します。今回はこんな感じに書いてみました。

module.exports = function(req, res) {
  res.status(200).json({
    time: Date.now(),
    data: req.query,
    mgs: "Hello World"
  })
};

これは処理分けは行っていませんが、サーバの現在時刻(タイムスタンプ)とテキスト、そしてリクエストされたパラメータを出力します。

アップロードする際の注意点ですが、必ず .js という拡張子をつけるようにしてください。また、適切なパーミッションを設定してください。特定のユーザ(管理者など)だけ実行できるようにすることもできます。逆に全員に実行権限を与えることもできます。

管理画面で実行してみる

では実際に実行してみます。今回は管理画面から実行してみます。アップロードされたスクリプトを選択すると、テスト実行できる画面が表示されます。

ここでヘッダーやクエリーを指定することができます。

そして実行すると、レスポンスが返ってきます。

このようにして任意のスクリプトを実行できるようになります。

実行ログを確認する

実行結果はログとして確認できるようになっています。期間やステータスコードでの絞り込みができるようになっていますので、試してみてください。

注意点

スクリプトをアップデートすると、一時的にエラーが発生します。内容は ScriptNotYetDeployedError: Script is not yet deployed. で、デプロイが行われる前のエラーです。これは数秒で出なくなりますが、アプリ側でもこのエラーの場合はリトライすると言った仕組みが必要かも知れません。


スクリプト機能を使うことで、複雑だったアプリ側のロジックを簡素化したり、AndroidとiOSでロジックを共通化することができます。他にも様々なメリットが考えられますので、それは今後紹介していきます。

3月中はβにつき、無制限に試せます。ぜひトライしてみてください。

バックナンバー