Maison > interface Web > js tutoriel > Comment puis-je récupérer les noms de sous-collections dans Cloud Firestore ?

Comment puis-je récupérer les noms de sous-collections dans Cloud Firestore ?

Mary-Kate Olsen
Libérer: 2024-12-14 17:03:17
original
989 Les gens l'ont consulté

How Can I Retrieve Subcollection Names in Cloud Firestore?

Recherche de noms de sous-collections dans Cloud Firestore

Dans Cloud Firestore, vous organiserez souvent vos données dans une hiérarchie avec des documents et des sous-collections. La récupération des noms de sous-collections est essentielle pour naviguer dans cette structure de données.

Problème :

Récupérer les noms de sous-collections à partir d'un document peut sembler intuitif, mais ce n'est pas possible sur mobile et sur le Web. SDK clients. Lorsque vous récupérez un document avec get(), il renvoie uniquement les valeurs des champs, pas les noms de collections imbriquées.

Raison :

Les SDK clients de Firestore donnent la priorité à la sécurité et aux performances. . L'exposition des noms de sous-collections pourrait introduire des vulnérabilités potentielles et avoir un impact sur les performances.

Solution pour les SDK côté serveur :

Dans Node.js et d'autres SDK côté serveur, vous pouvez accéder noms de sous-collections à l’aide de la méthode Collection.listCollectionIds(). Cette méthode fournit un moyen sécurisé et performant de récupérer les noms de sous-collections dans un document.

Exemple :

const firestore = require('firestore.v1beta1');

const client = firestore.v1beta1({
  // optional auth parameters.
});

const formattedParent = client.anyPathPath("PROJECT", "DATABASE", "DOCUMENT", "ANY_PATH");

client.listCollectionIds({parent: formattedParent}).then((responses) => {
    const resources = responses[0];
    for (var i = 0; i < resources.length; ++i) {
        // doThingsWith(resources[i])
    }
})
.catch((err) => {
    console.error(err);
});
Copier après la connexion

Cette solution fournit un moyen sécurisé et efficace de récupérer des sous-collections. noms dans les environnements côté serveur. Pour les clients mobiles et Web, vous devrez peut-être envisager des structures de données alternatives ou gérer soigneusement les noms de sous-collections.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal