繁体   English   中英

Firestore 返回根目录中的所有文档

[英]Firestore return all documents in collection at the root

在我的 firestore 数据库的根目录下,我有一个“用户”和“帐户”collections。每当我尝试返回这些集合中的任何一个中的所有文档时,我都会收到错误消息(那里肯定有数据):

未捕获(承诺)FirebaseError:Null 值错误。 对于“列表”@ L59,Null 值错误。 对于“列表”@ L63,Null 值错误。 对于“列表”@ L76

产生上述错误的代码:

const query = fs.query(
     fs.collection(firestore, 'accounts'),
  );

  const querySnapshot = await getDocs(query);

  querySnapshot.forEach((doc) => {
     console.log(doc.id, ' => ', doc.data());
  });

如果我尝试从任何子集合中返回所有文档,它工作正常:

const query = fs.query(
     fs.collection(firestore, `accounts/${accountId}`, 'sites'),
  );

  const querySnapshot = await getDocs(query);

  querySnapshot.forEach((doc) => {
     console.log(doc.id, ' => ', doc.data());
  });

任何想法为什么会这样,我查询错了吗? 这可能与 firestore 规则有关吗?

塔。

如果其他人遇到此问题,我已经找到了原因。

我只是禁用了 firestore.rules 中的所有规则(由其他人创建)并添加了一个通用规则以在经过身份验证后访问所有文档:

match /{document=**} {
  allow read, write: if request.auth != null;
}

然后这停止了错误并列出了所有文档。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM