[英]How to save date as Timestamp in firestore using firebase-admin?
[英]How to store date in Firestore from client side without importing firebase-admin?
我想在客户端使用类似serverTimestamp
方法,但要做到这一点,我需要包含 firebase-admin 包,这会增加客户端包的大小。
import * as firebaseAdmin from "firebase-admin";
if (!firebaseAdmin.apps.length) {
firebaseAdmin.initializeApp();
}
const firebaseTimestamp = firebaseAdmin.firestore.FieldValue.serverTimestamp();
const initDate = firebaseAdmin.firestore.Timestamp.fromDate(
new Date(Date.UTC(0, 0, 0, 0, 0, 0))
);
是否有任何轻量级解决方案可以从客户端访问 firebase 时间戳方法?
我不确定我是否可以放弃servertimestamp
并使用new Date()
因为它与当前时区有关。 我想在 Firestore 中存储时间(从客户端),这与任何时区无关,以后我应该能够根据该 Date 参数查询 Firestore。
参考: https : //firebase.google.com/docs/reference/node/firebase.firestore.Timestamp
您不得在客户端导入 Firebase Admin SDK。 它需要服务帐户才能运行并具有管理员权限,即不遵守任何安全规则并且可以完全访问您的 Firebase 项目。
您也可以使用客户端 SDK 添加时间戳:
firebase.firestore.FieldValue.serverTimestamp()
您可以在文档中阅读有关此内容的更多信息
或者,您可以使用UNIX 时间戳,而不会遇到时区问题。
它是自 Unix 纪元以来经过的秒数,减去闰秒; Unix 纪元是 1970 年 1 月 1 日 00:00:00 UTC;
const timestamp = Date.now()
然后就可以使用 JS Date对象将其格式化为任何格式。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.