簡體   English   中英

Firebase 雲 function 時間戳

[英]Firebase cloud function timestamp

在我當前的應用程序中,我在 Firestore 中為每個用戶存儲一個值,大致如下:
User1Doc - hasUsedFeatureToday = true
User2Doc - hasUsedFeatureToday = false
...

在一天結束時,我運行了一個預定的 function,將所有這些重置為 false。 當我的應用程序相對較小時這很好,但不能像我相信您可以想象的那樣非常有效地擴展。

每個用戶每天只能使用我的應用程序的這一方面一次,因此只有在他們嘗試使用它時才會讀取該字段。

我想更改此系統以在用戶使用該功能時將時間戳存儲在用戶的文檔中,然后在有人嘗試再次使用它時檢查此時間戳是否是同一天(歐洲/倫敦時間)。

Firebase 是否提供了一種方法來獲取這樣的“時區”時間戳並使用 Firestore 存儲/檢查它?

您可以只存儲時間戳 (UTC)。 每當用戶登錄到您的應用程序時,只需檢查時間戳並更新時間戳即可。 您始終可以使用像Luxon這樣的庫從 UTC 時間獲取本地時間。

如果你想讓用戶只更新一次這個時間戳,你可以使用安全規則來限制它。 但是,用戶可能會首先嘗試阻止更新時間戳。

您可以改為使用雲 Function 僅在用戶請求時提供數據。 這比更新所有用戶的文檔要好,即使他們不會每天都使用該功能。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM