Heim > Web-Frontend > js-Tutorial > Wie kann ich in einer einzigen Anfrage effizient mehrere Firestore-Dokumente nach ID abrufen?

Wie kann ich in einer einzigen Anfrage effizient mehrere Firestore-Dokumente nach ID abrufen?

Linda Hamilton
Freigeben: 2024-12-10 19:45:22
Original
837 Leute haben es durchsucht

How to Efficiently Retrieve Multiple Firestore Documents by ID in a Single Request?

So rufen Sie mehrere Dokumente anhand ihrer IDs in einer einzigen Anfrage mit Google Firestore ab

Um mehrere Dokumente basierend auf ihren IDs in einer einzigen Anfrage effizient abzurufen Beachten Sie bei einem Netzwerkaufruf Folgendes Ansätze:

Node.js:

const getAll = (...documents) =>
  Promise.all(documents.map(doc => doc.get()));
Nach dem Login kopieren

Rufen Sie getAll() auf und übergeben Sie die gewünschten DocumentReference-Objekte:

let documentRef1 = firestore.doc('col/doc1');
let documentRef2 = firestore.doc('col/doc2');

firestore.getAll(documentRef1, documentRef2).then(docs => {
  console.log(`First document: ${JSON.stringify(docs[0])}`);
  console.log(`Second document: ${JSON.stringify(docs[1])}`);
});
Nach dem Login kopieren

Server SDK (Python):

def get_all(client, *docs):
  return client.get_all(docs)

docs = (
    db.collection(u'users').document(u'alovelace'),
    db.collection(u'users').document(u'aturing'),
    db.collection(u'users').document(u'hopper'),
)
docs_iterator = get_all(client, *docs)
Nach dem Login kopieren

IN Abfragen:

Firestore unterstützt jetzt IN-Abfragen, sodass Sie nach einer Liste von IDs gefilterte Dokumente effizient abrufen können:

myCollection.where(firestore.FieldPath.documentId(), 'in', ["123", "456", "789"])
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie kann ich in einer einzigen Anfrage effizient mehrere Firestore-Dokumente nach ID abrufen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage