はじめに
おはようございます。こんにちは。こんばんは。
今回は前回発生した緊急クエストです。
では、早速行って見ましょう。
REST APIとは
こちらの記事が参考になります。
expressを使ったREST API
expressとは
expressはNode.jsで利用できるWebアプリケーションフレームワークです。
インストール
$ npm install express --save
API開発
functions
ディレクトリの配下にrouter/index.js
を作り、そこにルーティングの設定を書きます。
※ルーティングの実装はルーティング用のオブジェクトを別ファイルで管理するとコードが読みやすくなるのでおすすめ
functions/router/index.js
const express = require("express");
const router = express.Router();
router
.route("/")
.get((request, response) => {
// ここにコレクション等の取得を書く
response.json({
"message": "call by the GET method"
})
})
.post((request, response) => {
// ここデータ送信の処理を書く
response.json({
"message": "call by the POST method"
})
})
router
.route("/:id")
.put((request, response) => {
// ここデータ更新の処理を書く
response.json({
"message": "call by the PUT method ID:" + request.params.id
})
})
.delete((request, response) => {
// ここデータ削除の処理を書く
response.json({
"message": "call by the DELETE method ID:" + request.params.id
})
})
module.exports = router
最後にこの設定をCloud Functionsに組み込みましょう。
functions/index.js
const functions = require('firebase-functions');
const express = require("express");
const app = express();
const router = require("./router/index");
app.use("/", router);
exports.api= functions.https.onRequest(app);
以上がCloud Functionsとexplessを組み合わせるAPI(REST API)の作り方でした。
解説が浅いところとか、間違い等があれば教えてください。
次回は最終回のFirebaseのHostingです。
最後まで読んでいただきありがとうございました。
Twitterやってます。良ければチェックして見てください。