Node.js应用程序需要将一些数据写入数据库并退出。 但是在Firebase中,一旦建立了数据库连接,它就不会让应用程序退出。
强制退出的解决方案(app.delete()
和process.exit()
,在类似问题中提出)在延迟调用时起作用。我想这是将本地缓存刷新到数据库所需的时间。
为了强制退出,需要确保本地缓存的数据是否与服务器同步。那么,如何检查本地缓存何时同步?
答案 0 :(得分:1)
目前没有API调用来确定本地写入队列是否为空。
检测此情况的唯一方法是写入值wait for its completion listener to be called。
ref.push().set("Writing extra data", function(error) {
if (error) {
alert("Data could not be saved." + error);
} else {
alert("Data (including any previous writes) saved successfully.");
}
});
由于保证按顺序调用单个客户端的写操作,因此您可以确定之前的所有写操作也已在此时提交。