使用云函数返回Firestore中的每个集合及其文档,可以按照以下步骤进行操作:
const functions = require('firebase-functions');
const admin = require('firebase-admin');
admin.initializeApp();
// 云函数入口函数
exports.getFirestoreData = functions.https.onRequest(async (req, res) => {
try {
const collections = await admin.firestore().listCollections();
const result = [];
for (const collection of collections) {
const collectionData = await collection.get();
const documents = [];
collectionData.forEach((doc) => {
documents.push(doc.data());
});
result.push({ collection: collection.id, documents: documents });
}
res.status(200).json(result);
} catch (error) {
console.error(error);
res.status(500).send('Internal Server Error');
}
});
上述云函数代码使用Firebase提供的官方SDK操作Firestore。在函数内部,首先使用admin.firestore().listCollections()
获取所有集合的引用,然后遍历每个集合,通过.get()
方法获取集合中的文档数据,并将其整理成指定格式的结果。最后,通过res.status(200).json(result)
将结果返回。
需要注意的是,上述云函数代码中未提及腾讯云的相关产品,如果需要使用腾讯云的云函数服务,可以参考腾讯云的官方文档了解如何创建和部署云函数。
参考文档:
领取专属 10元无门槛券
手把手带您无忧上云