为了账号安全,请及时绑定邮箱和手机立即绑定

Firebase:Firestore未更新Cloud Function的计划功能中的数据

Firebase:Firestore未更新Cloud Function的计划功能中的数据

墨色风雨 2023-08-18 10:01:57
我在这里有一个非常奇怪的经历,我的预定函数将在每上午 12:00 更新文档并且它可以工作,但是文档上没有任何更改。exports.updatePrediksiData = functions.pubsub.schedule('0 0 * * *')    .timeZone('Asia/Manila') // Users can choose timezone - default is America/Los_Angeles    .onRun((context) => {        //This will be run every day at 12:00 AM        return updatePrediction()            .catch(error => {                return db.collection("Issues").doc(new Date().getTime().toString()).set({                    error: error.message,                    log: "updatePrediction failed to update prediction data."                });            });    });function updatePrediction() {    const dateFormat = require('dateformat');    dateFormat.i18n = {        dayNames: [            'Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat',            'Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'        ],        monthNames: [            'Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec',            'Januari', 'Februari', 'Maret', 'April', 'Mei', 'Juni', 'Juli', 'Agustus', 'September', 'Oktober', 'November', 'Desember'        ],        timeNames: [            'a', 'p', 'am', 'pm', 'A', 'P', 'AM', 'PM'        ]    };    var genVal = getPrediksi();    const currentDate = new Date();    //Tuesday and Friday is not included    if (currentDate.getDay() === 2 || currentDate.getDay() === 5)        genVal = "----";    return db        .collection("Prediksi")        .doc("Togel")        .set({            date: dateFormat(new Date().getTime(), "dd mmmm yyyy"),            value: genVal        })        .then(result => {            console.log("Updating prediction is success.");            return true;        })}自周五以来,“value”字段的预期新数据将为“----”,但即使是日期也没有任何变化。正如您所看到的,这里显示成功。但正如您所看到的,没有应用任何更改,起初我以为它是使用 Firebase Firestore 规则进行的,但功能是使用 Admin SDK 进行的,其中未应用规则。这里出了什么问题?我在这里使用 Node js 10,到目前为止,这是我第一次在 Firestore 上编写时遇到这个问题,而其他功能却运行得很好。提前致谢。
查看完整描述

1 回答

?
UYOU

TA贡献1878条经验 获得超4个赞

我确认这是对象的问题Date,我将时区更改为目标受众作为修复,如下所示new Date(new Date().toLocaleString("en-US", { timeZone: "Asia/Jakarta" }))。起初,我尝试移动功能区域,因为我认为这样可以解决问题并移动时区,但事实并非如此。



查看完整回答
反对 回复 2023-08-18
  • 1 回答
  • 0 关注
  • 66 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信