gpt4 book ai didi

node.js - Firebase 事务 [错误 : Set]

转载 作者:搜寻专家 更新时间:2023-11-01 00:14:47 25 4
gpt4 key购买 nike

我正在为 Node 使用 firebase,当尝试使用事务创建存储数据时,我得到:

[Error: Set]

我很难弄清楚此错误代码的含义。我重写了我的代码,暂时禁用了安全规则,但我得到了同样的错误。

这是我使用的代码:

        myRef.child(user).transaction(function(currentData) {
if (currentData === null) {
//data doesn't exist
return {
total: userTotal,
left: userLeft,
isText: userIsText
};
} else {
currentData.total += userTotal;
currentData.left += userLeft;

return {
total: currentData.total,
left: currentData.left,
isText: currentData.isText
};
}
}, function(error, committed, snapshot) {
if(error) {
console.log('@line 281: FB Tx failed', error);
} else if (!committed) {
console.log('FB Tx aborted');
}
});

当然,我收到的实际控制台错误消息是:

@line 281: FB Tx failed [Error: Set]

对错误代码应该表示哪种错误/代码中出了什么问题有任何见解吗?我在脚本的其他地方有几乎相同的代码,它确实有效,所以我很困惑......

提前致谢!

最佳答案

您看到的错误表明交易由于在您的应用/代码中的其他地方写入而被中止。

Firebase 事务通过将本地转换函数应用于数据的当前状态并将新状态写入服务器来工作。但是,如果您调用了 ref.set(...)ref.update(...)ref.remove() 对于代码中其他地方的相同路径,您无论如何都会破坏该路径的更改,这就是事务中止的原因。

如果您在跟踪该路径的更改时遇到问题,请尝试在您的应用程序开始时使用 Firebase.enableLogging(true) 以查看 Firebase 客户端在后台执行的操作。

关于node.js - Firebase 事务 [错误 : Set],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30147645/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com