0
我想自動爲添加到Firebase數據庫的新項目創建過期時間戳。所以我寫了以下功能:Firebase功能:操作admin.database.ServerValue.TIMESTAMP
exports.onCreateNewItem = functions.database.ref('/items/{item_id}').onCreate(event => {
var mergedUpdate = {};
mergedUpdate['expiration'] = admin.database.ServerValue.TIMESTAMP + 2678400000;
return event.data.adminRef.update(mergedUpdate);
})
但是,它不起作用。 /items/{item_id}/expiration
的值是"[object Object]2678400000"
,而我預計它是從現在開始的31天的時間戳。
雖然這確實是正確的,但有一些細微差別。例如:Date.how()和admin.database.ServerValue.TIMESTAMP的值不能保證(也不太可能)相同。這意味着你不能使用'Date.now()',並在安全規則中成功地將它與'now'比較。所以:雖然你的方法在很多情況下可能都很好,但它不是一個直接替代品。 –
只要差異在分鐘範圍內,我就可以。這不是這種情況嗎? – user2145097
弗蘭克在他的評論中發現的時代的差異決不會超過一秒。 –