😸

firebase functionのapiの受取とレスポンスについて

2023/11/27に公開

Vue.js (Nuxt)でapiを受け取ってみた

業務でapiをpost通信したのですが、その際にテストで受け取り側も作成したのでそちらの備忘録となります。

POST通信作成はこちら
https://zenn.dev/rionishino/articles/961e33407dc1a8

実装

※firebaseのfunctionに記載しています。


exports.response = functions.region(region).https.onRequest(async(req, res) => {

const id = req.body.id

if (!id) {
  return res.status(400).send({body: 'No param'})
} else {

// idがある場合の処理
// 例えばユーザー情報取得など
 console.log(id)
}
}

要の部分は.https.onRequest(async(req, res)の部分です。

http.onRequestで関数がhttp対応することを示しています。
Webから直接呼び出せるということです。

async(req, res) => {}

req: リクエストオブジェクトは、クライアントから送信されたHTTPリクエストの詳細を含みます。これには、URL、HTTPメソッド(GET、POSTなど)、ヘッダー、クエリパラメータ、本文などが含まれます。dataが入っているのがreqと覚えておけばよいかなと。

res: レスポンスオブジェクトは、サーバーからクライアントに送信するHTTPレスポンスを制御します。これには、ステータスコード、ヘッダー、本文などを設定するメソッドが含まれます。

まずはここまで知識があればよいかと。
もっと深く理解したい場合はそれぞれ深堀してください。

Discussion