我有一个“用户”集合,其中集合中的每个文档代表一个用户。
如果我获取“users”集合中的所有文档,这是否被视为对 Firebase 使用配额的 1 次读取或 X 次读取(X 是所述集合中的文档数量)?
当前代码如下所示:
static func fetchAllUsers(completion: @escaping([TFUser]) -> Void) {
var users = [TFUser]()
Firestore.firestore().collection("users").getDocuments { (snapshot, error) in
snapshot?.documents.forEach({ (document) in
let dictionary = document.data()
let user = TFUser(dictionary: dictionary)
users.append(user)
if users.count == snapshot?.documents.count {
completion(users)
}
})
}
}
非常感谢对此事的任何见解。提前致谢。
最佳答案
查询集合时,您需要为查询返回的每个文档付费。
如果可能,您可以使用客户端 SDK 提供的 .where()
功能,而不是提取所有文档并对其进行排序以查找所需的文档。
如果您想节省流量,由于客户端SDK不支持文档的部分读取,您可以创建一个HTTPS可调用的云函数,只将所需的文档数据发送回客户端。
关于ios - 获取集合中的所有文档 - Firebase Firestore iOS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66959645/