我正在尝试使用云功能将我的所有帖子移动到firestore
exports.copyPosts = functions.https.onRequest((req, res) => {
var i = 0;
var username;
db.ref("feeds").child("all").limitToLast(2000).once("value", function (postSnap) {
console.log(postSnap.numChildren());
postSnap.forEach(function(topic){
i = i + 1;
firestore.collection("topics").doc(i+"").set({
caption: topic.child("caption").val(),
time: topic.child("time").val(),
username: topic.child("username").val(),
category: topic.child("category").val(),
pic: topic.child("pic").val()
})
if(postSnap.numChildren()==i){
res.contentType('application/json');
res.status(200).send("Success");
}
});
});
});
它返回成功。在此之前,我使用此循环将帖子复制到另一个实时数据库位置,并且它有效。
但是对于firestore,没有添加任何数据,并且日志中没有错误显示..
答案 0 :(得分:0)
我可以使用云功能将数据插入到firestore。 您可以先将数据传递给变量,然后将变量放入set()操作中。希望这可以帮到你
exports.insertDB = functions.https.onRequest((request,response) =>
{
var firstname_input = request.query.name;
db.collection("user").doc(firstname_input).set({
first_name : firstname_input,
last_name : "Chow",
hobby : "Swimming"
})
response.send("Inserted a new user, name: " + firstname_input);
});