Cloud FunctionsでFirestoreにタイムスタンプ(serverTimestamp)を登録
Cloud Functionsに作成した関数内でFirestoreにデータを登録する際、サーバー側のタイムスタンプ(serverTimestamp)で登録する方法。
コード
まずは、モジュール(firebase-admin)をrequire。
const admin = require("firebase-admin")
タイムスタンプ(serverTimestamp)の設定。
admin.firestore.FieldValue.serverTimestamp()
使用例
実際に使用する場合は以下のようになります。
const admin = require("firebase-admin")
admin.initializeApp()
const fireStore = admin.firestore()
exports.saveMessage = functions
.https.onRequest((req, res) => {
fireStore.collection("messages").add({
name: req.body.name,
email: req.body.email,
subject: req.body.subject,
message: req.body.message,
createdAt: admin.firestore.FieldValue.serverTimestamp()
})
.then(() => {
console.log("Success");
})
.catch((error) => {
console.error("Error: ", error);
})
res.end()
})
※CORSなどの対応は省いています。