Firebase Cloud Function无法获取大集合中的所有文档

时间:2020-10-07 05:04:03

标签: javascript firebase google-cloud-firestore google-cloud-functions

我正尝试从50,000多个文档的集合中获取所有文档,其中一些标签为isPositive = false,另一些标签为isPositive = true。但是,当我运行此命令时,出现“函数执行耗时3627毫秒,状态为:'连接错误'”。这是代码:

exports.findActualLikes = (request, response) => {
  let charactersAlreadyIn = { a: 0, b: 0 };

  return (
    db
      .collection("likes")
      .where("isPositive", "==", true)
      .get()
      .then((data) => {
        return data.forEach((doc) => {
          console.log(doc.data().characterId);
          if (doc.data().characterId in charactersAlreadyIn) {
            charactersAlreadyIn[doc.data().characterId]++;
          } else {
            charactersAlreadyIn[doc.data().characterId] = 1;
          }
        });
      })
      .then(() => {
        return response.json(charactersAlreadyIn);
      })
      .catch((err) => {
        console.error(err);
      })
  );
};

奇怪的是,在.limit(100)之前添加.get()使其仅对前100个文档有效。

为什么会这样?谢谢!

0 个答案:

没有答案