Erste Schritte mit Cloud Firestore Standard Edition mit Server-Clientbibliotheken

In dieser Kurzanleitung wird gezeigt, wie Sie Cloud Firestore Enterprise-Edition einrichten, Daten hinzufügen und die gerade hinzugefügten Daten in der Firebase-Konsole mit Server-Clientbibliotheken für C#, Go, Java, Node.js, PHP, Python und Ruby ansehen.

Mit diesen Clientbibliotheken können Sie privilegierte Serverumgebungen mit vollem Zugriff auf Ihre Datenbank einrichten.

Cloud Firestore-Datenbank erstellen

  1. Falls noch nicht geschehen, erstellen Sie ein Firebase-Projekt: Klicken Sie in der Firebase Console auf Projekt hinzufügen und folgen Sie der Anleitung auf dem Bildschirm, um ein Firebase-Projekt zu erstellen oder Firebase-Dienste für ein vorhandenes Google Cloud-Projekt hinzuzufügen.

  2. Öffnen Sie Ihr Projekt in der Firebase-Konsole. Maximieren Sie im linken Bereich Build und wählen Sie dann Firestore-Datenbank aus.

  3. Klicken Sie auf Datenbank erstellen.

  4. Wählen Sie einen Speicherort für Ihre Datenbank aus.

    Wenn Sie keinen Speicherort auswählen können, wurde der Speicherort für Standardressourcen Ihres Projekts bereits festgelegt.Google Cloud Einige Ressourcen Ihres Projekts (z. B. die Standardinstanz Cloud Firestore) haben eine gemeinsame Standortabhängigkeit. Ihr Standort kann entweder bei der Projekterstellung oder beim Einrichten eines anderen Dienstes festgelegt werden, der diese Standortabhängigkeit hat.

  5. Wählen Sie einen Startmodus für Ihr Cloud Firestore Security Rules aus:

    Testmodus

    Gut für die ersten Schritte mit den Mobil- und Web-Clientbibliotheken, allerdings können Ihre Daten von beliebigen Personen gelesen und überschrieben werden. Prüfen Sie nach dem Test den Abschnitt Daten schützen.

    Wählen Sie den Testmodus aus, um mit dem Web-, Apple-Plattform- oder Android SDK zu beginnen.

    Produktionsmodus

    Verweigert alle Lese- und Schreibvorgänge von Mobil- und Webclients. Ihre authentifizierten Anwendungsserver (C#, Go, Java, Node.js, PHP, Python oder Ruby) können weiterhin auf Ihre Datenbank zugreifen.

    Wenn Sie die C#-, Go-, Java-, Node.js-, PHP-, Python- oder Ruby-Server-Clientbibliothek verwenden möchten, wählen Sie den Produktionsmodus aus.

    Ihre erste Gruppe von Cloud Firestore Security Rules wird auf Ihre Standarddatenbank Cloud Firestore angewendet. Wenn Sie mehrere Datenbanken für Ihr Projekt erstellen, können Sie Cloud Firestore Security Rules für jede Datenbank bereitstellen.

  6. Klicken Sie auf Erstellen.

Wenn Sie Cloud Firestore aktivieren, wird auch die API im Cloud API Manager aktiviert.

Entwicklungsumgebung einrichten

Fügen Sie Ihrer Anwendung die erforderlichen Abhängigkeiten und Clientbibliotheken hinzu.

Java
  1. Fügen Sie das Firebase Admin SDK in Ihre App ein:
    • Mit Gradle:
      implementation 'com.google.firebase:firebase-admin:9.7.1'
    • Mit Maven:
      <dependency>
        <groupId>com.google.firebase</groupId>
        <artifactId>firebase-admin</artifactId>
        <version>9.7.1</version>
      </dependency>
           
  2. Folgen Sie der Anleitung unten, um Cloud Firestore mit den richtigen Anmeldedaten in Ihrer Umgebung zu initialisieren.
Python
  1. Fügen Sie Ihrer Python-App das Firebase Admin SDK hinzu:
    pip install --upgrade firebase-admin
  2. Folgen Sie der Anleitung unten, um Cloud Firestore mit den richtigen Anmeldedaten in Ihrer Umgebung zu initialisieren.
Node.js
  1. Fügen Sie Ihrer App das Firebase Admin SDK hinzu:
    npm install firebase-admin --save
  2. Folgen Sie der Anleitung unten, um Cloud Firestore mit den richtigen Anmeldedaten in Ihrer Umgebung zu initialisieren.
Go
  1. Fügen Sie Ihrer Go-App das Firebase Admin SDK hinzu:
    go get firebase.google.com/go
  2. Folgen Sie der Anleitung unten, um Cloud Firestore mit den richtigen Anmeldedaten in Ihrer Umgebung zu initialisieren.
PHP
  1. Die Cloud Firestore-Server-Clientbibliotheken (Java, Node.js, Python, Go, PHP, C# und Ruby) verwenden Google-Standardanmeldedaten für Anwendungen für die Authentifizierung.
    • Wenn Sie sich über Ihre Entwicklungsumgebung authentifizieren möchten, legen Sie die Umgebungsvariable GOOGLE_APPLICATION_CREDENTIALS so fest, dass sie auf eine JSON-Datei mit dem Dienstkontoschlüssel verweist. Sie können eine Schlüsseldatei auf der Seite „Anmeldedaten“ der API Console erstellen.
      export GOOGLE_APPLICATION_CREDENTIALS="path/to/your/keyfile.json"
    • In der Produktionsumgebung müssen Sie sich nicht authentifizieren, wenn Sie Ihre Anwendung in App Engine oder Compute Engine mit demselben Projekt ausführen, das Sie für Cloud Firestore verwenden. Andernfalls richten Sie ein Dienstkonto ein.
  2. Installieren und aktivieren Sie die gRPC-Erweiterung für PHP. Diese benötigen Sie für die Nutzung der Clientbibliothek.
  3. Fügen Sie Ihrer Anwendung die Cloud Firestore-PHP-Bibliothek hinzu:
    composer require google/cloud-firestore
Ruby
  1. Die Cloud Firestore-Server-Clientbibliotheken (Java, Node.js, Python, Go, PHP, C# und Ruby) verwenden Google-Standardanmeldedaten für Anwendungen für die Authentifizierung.
    • Wenn Sie sich über Ihre Entwicklungsumgebung authentifizieren möchten, legen Sie die Umgebungsvariable GOOGLE_APPLICATION_CREDENTIALS so fest, dass sie auf eine JSON-Datei mit dem Dienstkontoschlüssel verweist. Sie können eine Schlüsseldatei auf der Seite „Anmeldedaten“ der API Console erstellen.
      export GOOGLE_APPLICATION_CREDENTIALS="path/to/your/keyfile.json"
    • In der Produktionsumgebung müssen Sie sich nicht authentifizieren, wenn Sie Ihre Anwendung in App Engine oder Compute Engine mit demselben Projekt ausführen, das Sie für Cloud Firestore verwenden. Andernfalls richten Sie ein Dienstkonto ein.
  2. Fügen Sie Ihrer Anwendung in der Gemfile die Cloud Firestore Ruby-Bibliothek hinzu:
    gem "google-cloud-firestore"
  3. Installieren Sie Abhängigkeiten aus der Gemfile-Datei mit folgendem Befehl:
    bundle install

Optional: Prototyp erstellen und mit Firebase Local Emulator Suite testen

Bevor wir uns ansehen, wie Ihre App Daten in Cloud Firestore schreibt und daraus liest, möchten wir Ihnen einige Tools vorstellen, mit denen Sie die Cloud Firestore-Funktionen prototypisieren und testen können:Firebase Local Emulator Suite. Wenn Sie verschiedene Datenmodelle ausprobieren, Ihre Sicherheitsregeln optimieren oder nach der kostengünstigsten Möglichkeit suchen, mit dem Backend zu interagieren, kann es sinnvoll sein, lokal zu arbeiten, ohne Live-Dienste bereitzustellen.

Ein Cloud Firestore-Emulator ist Teil der Local Emulator Suite. Dadurch kann Ihre App mit den emulierten Datenbankinhalten und der Konfiguration sowie optional mit den emulierten Projektressourcen (Funktionen, anderen Datenbanken und Sicherheitsregeln) interagieren.

Die Verwendung des Cloud Firestore-Emulators umfasst nur wenige Schritte:

  1. Fügen Sie der Testkonfiguration Ihrer App eine Codezeile hinzu, um eine Verbindung zum Emulator herzustellen.
  2. Führen Sie firebase emulators:start im Stammverzeichnis Ihres lokalen Projektverzeichnisses aus.
  3. Aufrufe aus dem Prototypcode Ihrer App mit einem Cloud Firestore-Plattform-SDK wie gewohnt.

Eine detaillierte Schritt-für-Schritt-Anleitung für Cloud Firestore und Cloud Functions ist verfügbar. Sehen Sie sich auch die Local Emulator Suite-Einführung an.

Cloud Firestore initialisieren

Initialisieren Sie eine Instanz von Cloud Firestore:

Java
Das Cloud Firestore SDK wird je nach Umgebung unterschiedlich initialisiert. Nachfolgend finden Sie die gängigsten Methoden. Eine vollständige Referenz finden Sie unter Admin SDK initialisieren.
  • Auf Google Cloud initialisieren
    import com.google.auth.oauth2.GoogleCredentials;
    import com.google.cloud.firestore.Firestore;
    
    import com.google.firebase.FirebaseApp;
    import com.google.firebase.FirebaseOptions;
    
    // Use the application default credentials
    GoogleCredentials credentials = GoogleCredentials.getApplicationDefault();
    FirebaseOptions options = new FirebaseOptions.Builder()
        .setCredentials(credentials)
        .setProjectId(projectId)
        .build();
    FirebaseApp.initializeApp(options);
    
    Firestore db = FirestoreClient.getFirestore();
  • Auf Ihrem eigenen Server initialisieren

    Wenn Sie das Firebase Admin SDK auf Ihrem eigenen Server verwenden möchten, benötigen Sie ein Dienstkonto.

    Rufen Sie in der Google Cloud Console IAM & Verwaltung > Dienstkonten auf. Generieren Sie einen neuen privaten Schlüssel und speichern Sie die JSON-Datei. Verwenden Sie die Datei dann, um das SDK zu initialisieren:

    import com.google.auth.oauth2.GoogleCredentials;
    import com.google.cloud.firestore.Firestore;
    
    import com.google.firebase.FirebaseApp;
    import com.google.firebase.FirebaseOptions;
    
    // Use a service account
    InputStream serviceAccount = new FileInputStream("path/to/serviceAccount.json");
    GoogleCredentials credentials = GoogleCredentials.fromStream(serviceAccount);
    FirebaseOptions options = new FirebaseOptions.Builder()
        .setCredentials(credentials)
        .build();
    FirebaseApp.initializeApp(options);
    
    Firestore db = FirestoreClient.getFirestore();
  • Python
    Das Cloud Firestore SDK wird je nach Umgebung unterschiedlich initialisiert. Nachfolgend finden Sie die gängigsten Methoden. Eine vollständige Referenz finden Sie unter Admin SDK initialisieren.
  • Auf Google Cloud initialisieren
    import firebase_admin
    from firebase_admin import firestore
    
    # Application Default credentials are automatically created.
    app = firebase_admin.initialize_app()
    db = firestore.client()

    Sie können auch vorhandene Standardanmeldedaten für Anwendungen verwenden, um das SDK zu initialisieren.

    import firebase_admin
    from firebase_admin import credentials
    from firebase_admin import firestore
    
    # Use the application default credentials.
    cred = credentials.ApplicationDefault()
    
    firebase_admin.initialize_app(cred)
    db = firestore.client()
  • Auf Ihrem eigenen Server initialisieren

    Wenn Sie das Firebase Admin SDK auf Ihrem eigenen Server verwenden möchten, benötigen Sie ein Dienstkonto.

    Rufen Sie in der Google Cloud Console IAM & Verwaltung > Dienstkonten auf. Generieren Sie einen neuen privaten Schlüssel und speichern Sie die JSON-Datei. Verwenden Sie die Datei dann, um das SDK zu initialisieren:

    import firebase_admin
    from firebase_admin import credentials
    from firebase_admin import firestore
    
    # Use a service account.
    cred = credentials.Certificate('path/to/serviceAccount.json')
    
    app = firebase_admin.initialize_app(cred)
    
    db = firestore.client()
  • Python

    Das Cloud Firestore SDK wird je nach Umgebung unterschiedlich initialisiert. Nachfolgend finden Sie die gängigsten Methoden. Eine vollständige Referenz finden Sie unter Admin SDK initialisieren.
  • Auf Google Cloud initialisieren
    import firebase_admin
    from firebase_admin import firestore_async
    
    # Application Default credentials are automatically created.
    app = firebase_admin.initialize_app()
    db = firestore_async.client()

    Sie können auch vorhandene Standardanmeldedaten für Anwendungen verwenden, um das SDK zu initialisieren.

    import firebase_admin
    from firebase_admin import credentials
    from firebase_admin import firestore_async
    
    # Use the application default credentials.
    cred = credentials.ApplicationDefault()
    
    firebase_admin.initialize_app(cred)
    db = firestore_async.client()
  • Auf Ihrem eigenen Server initialisieren

    Wenn Sie das Firebase Admin SDK auf Ihrem eigenen Server verwenden möchten, benötigen Sie ein Dienstkonto.

    Rufen Sie in der Google Cloud Console IAM & Verwaltung > Dienstkonten auf. Generieren Sie einen neuen privaten Schlüssel und speichern Sie die JSON-Datei. Verwenden Sie die Datei dann, um das SDK zu initialisieren:

    import firebase_admin
    from firebase_admin import credentials
    from firebase_admin import firestore_async
    
    # Use a service account.
    cred = credentials.Certificate('path/to/serviceAccount.json')
    
    app = firebase_admin.initialize_app(cred)
    
    db = firestore_async.client()
  • Node.js
    Das Cloud Firestore SDK wird je nach Umgebung unterschiedlich initialisiert. Nachfolgend finden Sie die gängigsten Methoden. Eine vollständige Referenz finden Sie unter Admin SDK initialisieren.
    • Auf Cloud Functions initialisieren
      const { initializeApp, applicationDefault, cert } = require('firebase-admin/app');
      const { getFirestore, Timestamp, FieldValue, Filter } = require('firebase-admin/firestore');
      initializeApp();
      
      const db = getFirestore();
      
    • Auf Google Cloud initialisieren
      const { initializeApp, applicationDefault, cert } = require('firebase-admin/app');
      const { getFirestore, Timestamp, FieldValue, Filter } = require('firebase-admin/firestore');
      initializeApp({
        credential: applicationDefault()
      });
      
      const db = getFirestore();
    • Auf Ihrem eigenen Server initialisieren

      Wenn Sie das Firebase Admin SDK auf Ihrem eigenen Server (oder in einer anderen Node.js-Umgebung) verwenden möchten, benötigen Sie ein Dienstkonto. Rufen Sie in der Google Cloud Console IAM & Verwaltung > Dienstkonten auf. Generieren Sie einen neuen privaten Schlüssel und speichern Sie die JSON-Datei. Verwenden Sie die Datei dann, um das SDK zu initialisieren:

      const { initializeApp, applicationDefault, cert } = require('firebase-admin/app');
      const { getFirestore, Timestamp, FieldValue, Filter } = require('firebase-admin/firestore');
      const serviceAccount = require('./path/to/serviceAccountKey.json');
      
      initializeApp({
        credential: cert(serviceAccount)
      });
      
      const db = getFirestore();
      
    Go
    Das Cloud Firestore SDK wird je nach Umgebung unterschiedlich initialisiert. Nachfolgend finden Sie die gängigsten Methoden. Eine vollständige Referenz finden Sie unter Admin SDK initialisieren.
  • Auf Google Cloud initialisieren
    import (
      "log"
    
      firebase "firebase.google.com/go"
      "google.golang.org/api/option"
    )
    
    // Use the application default credentials
    ctx := context.Background()
    conf := &firebase.Config{ProjectID: projectID}
    app, err := firebase.NewApp(ctx, conf)
    if err != nil {
      log.Fatalln(err)
    }
    
    client, err := app.Firestore(ctx)
    if err != nil {
      log.Fatalln(err)
    }
    defer client.Close()
  • Auf Ihrem eigenen Server initialisieren

    Wenn Sie das Firebase Admin SDK auf Ihrem eigenen Server verwenden möchten, benötigen Sie ein Dienstkonto.

    Rufen Sie in der Google Cloud Console IAM & Verwaltung > Dienstkonten auf. Generieren Sie einen neuen privaten Schlüssel und speichern Sie die JSON-Datei. Verwenden Sie die Datei dann, um das SDK zu initialisieren:

    import (
      "log"
    
      firebase "firebase.google.com/go"
      "google.golang.org/api/option"
    )
    
    // Use a service account
    ctx := context.Background()
    sa := option.WithCredentialsFile("path/to/serviceAccount.json")
    app, err := firebase.NewApp(ctx, nil, sa)
    if err != nil {
      log.Fatalln(err)
    }
    
    client, err := app.Firestore(ctx)
    if err != nil {
      log.Fatalln(err)
    }
    defer client.Close()
  • PHP

    PHP

    Weitere Informationen zum Installieren und Erstellen eines Cloud Firestore-Clients finden Sie unter Cloud Firestore-Clientbibliotheken.

    use Google\Cloud\Firestore\FirestoreClient;
    
    /**
     * Initialize Cloud Firestore with default project ID.
     */
    function setup_client_create(string $projectId = null)
    {
        // Create the Cloud Firestore client
        if (empty($projectId)) {
            // The `projectId` parameter is optional and represents which project the
            // client will act on behalf of. If not supplied, the client falls back to
            // the default project inferred from the environment.
            $db = new FirestoreClient();
            printf('Created Cloud Firestore client with default project ID.' . PHP_EOL);
        } else {
            $db = new FirestoreClient([
                'projectId' => $projectId,
            ]);
            printf('Created Cloud Firestore client with project ID: %s' . PHP_EOL, $projectId);
        }
    }
    C#

    C#

    Weitere Informationen zum Installieren und Erstellen eines Cloud Firestore-Clients finden Sie unter Cloud Firestore-Clientbibliotheken.

    FirestoreDb db = FirestoreDb.Create(project);
    Console.WriteLine("Created Cloud Firestore client with project ID: {0}", project);
    Ruby
    require "google/cloud/firestore"
    
    # The `project_id` parameter is optional and represents which project the
    # client will act on behalf of. If not supplied, the client falls back to the
    # default project inferred from the environment.
    firestore = Google::Cloud::Firestore.new project_id: project_id
    
    puts "Created Cloud Firestore client with given project ID."

    Daten hinzufügen

    In Cloud Firestore werden Daten in Dokumenten gespeichert, die wiederum in Sammlungen gespeichert sind. Cloud Firestore erstellt Sammlungen und Dokumente implizit, wenn Sie dem Dokument zum ersten Mal Daten hinzufügen. Sie müssen Sammlungen oder Dokumente also nicht explizit anlegen.

    Mit dem folgenden Beispielcode können Sie eine neue Sammlung und ein Dokument erstellen.

    Java
    DocumentReference docRef = db.collection("users").document("alovelace");
    // Add document data  with id "alovelace" using a hashmap
    Map<String, Object> data = new HashMap<>();
    data.put("first", "Ada");
    data.put("last", "Lovelace");
    data.put("born", 1815);
    //asynchronously write data
    ApiFuture<WriteResult> result = docRef.set(data);
    // ...
    // result.get() blocks on response
    System.out.println("Update time : " + result.get().getUpdateTime());
    Python
    doc_ref = db.collection("users").document("alovelace")
    doc_ref.set({"first": "Ada", "last": "Lovelace", "born": 1815})

    Python

    doc_ref = db.collection("users").document("alovelace")
    await doc_ref.set({"first": "Ada", "last": "Lovelace", "born": 1815})
    Node.js
    const docRef = db.collection('users').doc('alovelace');
    
    await docRef.set({
      first: 'Ada',
      last: 'Lovelace',
      born: 1815
    });
    Go
    _, _, err := client.Collection("users").Add(ctx, map[string]interface{}{
    	"first": "Ada",
    	"last":  "Lovelace",
    	"born":  1815,
    })
    if err != nil {
    	log.Fatalf("Failed adding alovelace: %v", err)
    }
    PHP

    PHP

    Weitere Informationen zum Installieren und Erstellen eines Cloud Firestore-Clients finden Sie unter Cloud Firestore-Clientbibliotheken.

    $docRef = $db->collection('samples/php/users')->document('alovelace');
    $docRef->set([
        'first' => 'Ada',
        'last' => 'Lovelace',
        'born' => 1815
    ]);
    printf('Added data to the lovelace document in the users collection.' . PHP_EOL);
    C#
    DocumentReference docRef = db.Collection("users").Document("alovelace");
    Dictionary<string, object> user = new Dictionary<string, object>
    {
        { "First", "Ada" },
        { "Last", "Lovelace" },
        { "Born", 1815 }
    };
    await docRef.SetAsync(user);
    Ruby
    doc_ref = firestore.doc "#{collection_path}/alovelace"
    
    doc_ref.set(
      {
        first: "Ada",
        last:  "Lovelace",
        born:  1815
      }
    )
    
    puts "Added data to the alovelace document in the users collection."

    Fügen Sie jetzt der Sammlung users ein weiteres Dokument hinzu. Beachten Sie, dass dieses Dokument ein Schlüssel/Wert-Paar (zweiter Vorname) enthält, das im ersten Dokument nicht auftaucht. Dokumente in einer Sammlung können unterschiedliche Informationen enthalten.

    Java
    DocumentReference docRef = db.collection("users").document("aturing");
    // Add document data with an additional field ("middle")
    Map<String, Object> data = new HashMap<>();
    data.put("first", "Alan");
    data.put("middle", "Mathison");
    data.put("last", "Turing");
    data.put("born", 1912);
    
    ApiFuture<WriteResult> result = docRef.set(data);
    System.out.println("Update time : " + result.get().getUpdateTime());
    Python
    doc_ref = db.collection("users").document("aturing")
    doc_ref.set({"first": "Alan", "middle": "Mathison", "last": "Turing", "born": 1912})

    Python

    doc_ref = db.collection("users").document("aturing")
    await doc_ref.set(
        {"first": "Alan", "middle": "Mathison", "last": "Turing", "born": 1912}
    )
    Node.js
    const aTuringRef = db.collection('users').doc('aturing');
    
    await aTuringRef.set({
      'first': 'Alan',
      'middle': 'Mathison',
      'last': 'Turing',
      'born': 1912
    });
    Go
    _, _, err = client.Collection("users").Add(ctx, map[string]interface{}{
    	"first":  "Alan",
    	"middle": "Mathison",
    	"last":   "Turing",
    	"born":   1912,
    })
    if err != nil {
    	log.Fatalf("Failed adding aturing: %v", err)
    }
    PHP

    PHP

    Weitere Informationen zum Installieren und Erstellen eines Cloud Firestore-Clients finden Sie unter Cloud Firestore-Clientbibliotheken.

    $docRef = $db->collection('samples/php/users')->document('aturing');
    $docRef->set([
        'first' => 'Alan',
        'middle' => 'Mathison',
        'last' => 'Turing',
        'born' => 1912
    ]);
    printf('Added data to the aturing document in the users collection.' . PHP_EOL);
    C#
    DocumentReference docRef = db.Collection("users").Document("aturing");
    Dictionary<string, object> user = new Dictionary<string, object>
    {
        { "First", "Alan" },
        { "Middle", "Mathison" },
        { "Last", "Turing" },
        { "Born", 1912 }
    };
    await docRef.SetAsync(user);
    Ruby
    doc_ref = firestore.doc "#{collection_path}/aturing"
    
    doc_ref.set(
      {
        first:  "Alan",
        middle: "Mathison",
        last:   "Turing",
        born:   1912
      }
    )
    
    puts "Added data to the aturing document in the users collection."

    Daten lesen

    Verwenden Sie die Datenansicht in der Firebase Console, um schnell zu prüfen, ob Sie Daten zu Cloud Firestore hinzugefügt haben.

    Sie können auch die Methode „get“ verwenden, um die gesamte Sammlung abzurufen.

    Java
    // asynchronously retrieve all users
    ApiFuture<QuerySnapshot> query = db.collection("users").get();
    // ...
    // query.get() blocks on response
    QuerySnapshot querySnapshot = query.get();
    List<QueryDocumentSnapshot> documents = querySnapshot.getDocuments();
    for (QueryDocumentSnapshot document : documents) {
      System.out.println("User: " + document.getId());
      System.out.println("First: " + document.getString("first"));
      if (document.contains("middle")) {
        System.out.println("Middle: " + document.getString("middle"));
      }
      System.out.println("Last: " + document.getString("last"));
      System.out.println("Born: " + document.getLong("born"));
    }
    Python
    users_ref = db.collection("users")
    docs = users_ref.stream()
    
    for doc in docs:
        print(f"{doc.id} => {doc.to_dict()}")

    Python

    users_ref = db.collection("users")
    docs = users_ref.stream()
    
    async for doc in docs:
        print(f"{doc.id} => {doc.to_dict()}")
    Node.js
    const snapshot = await db.collection('users').get();
    snapshot.forEach((doc) => {
      console.log(doc.id, '=>', doc.data());
    });
    Go
    iter := client.Collection("users").Documents(ctx)
    for {
    	doc, err := iter.Next()
    	if err == iterator.Done {
    		break
    	}
    	if err != nil {
    		log.Fatalf("Failed to iterate: %v", err)
    	}
    	fmt.Println(doc.Data())
    }
    PHP

    PHP

    Weitere Informationen zum Installieren und Erstellen eines Cloud Firestore-Clients finden Sie unter Cloud Firestore-Clientbibliotheken.

    $usersRef = $db->collection('samples/php/users');
    $snapshot = $usersRef->documents();
    foreach ($snapshot as $user) {
        printf('User: %s' . PHP_EOL, $user->id());
        printf('First: %s' . PHP_EOL, $user['first']);
        if (!empty($user['middle'])) {
            printf('Middle: %s' . PHP_EOL, $user['middle']);
        }
        printf('Last: %s' . PHP_EOL, $user['last']);
        printf('Born: %d' . PHP_EOL, $user['born']);
        printf(PHP_EOL);
    }
    printf('Retrieved and printed out all documents from the users collection.' . PHP_EOL);
    C#
    CollectionReference usersRef = db.Collection("users");
    QuerySnapshot snapshot = await usersRef.GetSnapshotAsync();
    foreach (DocumentSnapshot document in snapshot.Documents)
    {
        Console.WriteLine("User: {0}", document.Id);
        Dictionary<string, object> documentDictionary = document.ToDictionary();
        Console.WriteLine("First: {0}", documentDictionary["First"]);
        if (documentDictionary.ContainsKey("Middle"))
        {
            Console.WriteLine("Middle: {0}", documentDictionary["Middle"]);
        }
        Console.WriteLine("Last: {0}", documentDictionary["Last"]);
        Console.WriteLine("Born: {0}", documentDictionary["Born"]);
        Console.WriteLine();
    }
    Ruby
    users_ref = firestore.col collection_path
    users_ref.get do |user|
      puts "#{user.document_id} data: #{user.data}."
    end

    Nächste Schritte

    Vertiefen Sie Ihr Wissen mit folgenden Themen:

    • Datenmodell – Erfahren Sie mehr über die Strukturierung von Daten in Cloud Firestore, einschließlich hierarchischer Daten und untergeordneter Sammlungen.
    • Daten hinzufügen – Erfahren Sie mehr über das Erstellen und Aktualisieren von Daten in Cloud Firestore.
    • Daten abrufen – Erfahren Sie mehr über das Abrufen von Daten.
    • Einfache und komplexe Abfragen ausführen — Erfahren Sie, wie Sie einfache und komplexe Abfragen ausführen.
    • Abfragen sortieren und begrenzen: Erfahren Sie, wie Sie die von Ihren Abfragen zurückgegebenen Daten sortieren und begrenzen.