Heim >Technologie-Peripheriegeräte >IT Industrie >So bereichern Sie Daten mit MongoDB -Stich

So bereichern Sie Daten mit MongoDB -Stich

尊渡假赌尊渡假赌尊渡假赌
尊渡假赌尊渡假赌尊渡假赌Original
2025-02-15 10:35:12780Durchsuche

Dieses Tutorial zeigt angereicherte MongoDB -Dokumente mit Daten aus einer externen API unter Verwendung von MongoDB -Stich. Ein MongoDB -Dokument fügen nach dem ersten Einfügen Filmdetails aus der OMDB -API hinzu.

How to Enrich Data with MongoDB Stitch

Ziel: Dieses Tutorial zeigt:

  1. Fügen Sie ein Dokument mit einem MongoDB -Stich HTTP -Postdienst in MongoDB ein. Das ursprüngliche Dokument enthält nur ein _id und ein Title.
  2. Erstellen Sie einen Stichauslöser, der bei einem neuen Dokumenteneinfügung aktiviert.
  3. Verwenden Sie den Trigger, um die OMDB -API mit dem Filmtitel aufzurufen.
  4. Aktualisieren Sie das ursprüngliche MongoDB -Dokument mit den abgerufenen Filmdetails.

Voraussetzungen:

Sie benötigen einen kostenlosen MongoDB -Atlas -Cluster. Ein Video -Tutorial, das den Setup -Prozess beschreibt, ist verfügbar (Link, das vermutlich im Original bereitgestellt wird). Verknüpfen Sie dann eine MongoDB -Stichanwendung mit Ihrem Atlas -Cluster:

  1. Navigieren Sie zu "Stich -Apps" im linken Feld.
  2. Klicken Sie auf "Neue Anwendung erstellen."
  3. Nennen Sie Ihre Anwendung.
  4. Verknüpfen Sie es mit Ihrem MongoDB Atlas Cluster.

How to Enrich Data with MongoDB Stitch

Einrichten des HTTP -Postdienstes:

  1. im linken Feld, gehen Sie zu "Services", dann "einen Dienst hinzufügen".
  2. Nennen Sie den Dienst "IMDB" (oder wählen Sie einen anderen Namen. Denken Sie daran, den Code entsprechend zu aktualisieren).
  3. Fügen Sie einen eingehenden Webhook hinzu und beachten Sie die folgende Konfiguration (Screenshot im Original).

How to Enrich Data with MongoDB Stitch

Der folgende Funktionscode verwaltet die anfängliche Dokumentinsertion:

<code class="language-javascript">exports = function(payload, response) {
  const mongodb = context.services.get("mongodb-atlas");
  const movies = mongodb.db("stitch").collection("movies");
  var body = EJSON.parse(payload.body.text());
  movies.insertOne(body)
  .then(result => {
    response.setStatusCode(201);
  });
};</code>

Speichern Sie die Funktion. Testen Sie es unter Verwendung eines curl -Befehls (oder Postbote) wie dieser, wobei die Platzhalter -URL und das Geheimnis ersetzt werden:

<code class="language-bash">curl -H "Content-Type: application/json" -d '{"Title":"Guardians of the Galaxy"}' https://webhooks.mongodb-stitch.com/api/client/v2.0/app/stitchtapp-abcde/service/IMDB/incoming_webhook/post_movie_title?secret=test</code>

Überprüfen Sie die Insertion in Ihrem MongoDB -Atlas -Cluster.

How to Enrich Data with MongoDB Stitch

Erstellen Sie die Funktion Trigger und Anreicherung:

  1. Gehen Sie im linken Feld zu "Trigger", dann "einen Datenbankauslöser hinzufügen".
  2. Konfigurieren Sie den Auslöser wie im Original gezeigt (Screenshot vorgesehen).
  3. Verwenden Sie den folgenden Funktionscode, um Filmdetails aus der OMDB -API zu holen und hinzuzufügen:
<code class="language-javascript">exports = function(changeEvent) {
  var docId = changeEvent.documentKey._id;
  var title = encodeURIComponent(changeEvent.fullDocument.Title.trim());

  var movies = context.services.get("mongodb-atlas").db("stitch").collection("movies");
  var imdb_url = "http://www.omdbapi.com/?apikey=[YOUR_OMDB_API_KEY]&t=" + title;

  const http = context.services.get("IMDB");
    return http
      .get({ url: imdb_url })
      .then(resp => {
        var doc = EJSON.parse(resp.body.text());
        movies.updateOne({"_id":docId}, {$set: doc}); // Use $set to update only the new fields
      });
};</code>

Denken Sie daran, [YOUR_OMDB_API_KEY] durch Ihren tatsächlichen OMDB -API -Schlüssel zu ersetzen (erhalten Sie einen von https://www.php.cn/link/fcf70ea0bbeb4edca72cc304e75f4c98 ). Der $set -Preiber wird verwendet, um das Überschreiben bestehender Felder zu verhindern.

Testen Sie den Auslöser, indem Sie eine andere curl Anforderung senden. Das aktualisierte Dokument sollte nun die angereicherten Filmdaten enthalten.

How to Enrich Data with MongoDB Stitch

Zusammenfassung:

Dieser Prozess zeigt eine leistungsstarke Möglichkeit, externe APIs mit Ihren MongoDB -Daten mithilfe der serverlosen Funktionen von MongoDB Stitch zu integrieren. Die ereignisgesteuerte Architektur ermöglicht eine effiziente Datenanreicherung ohne komplexe serverseitige Logik.

Weitere Lesen:

  • MongoDB Stichrechnung: (Link vermutlich im Original bereitgestellt)
  • MongoDB -Atlas mit MongoDB -Stich: (Link vermutlich im Original bereitgestellt)

Das obige ist der detaillierte Inhalt vonSo bereichern Sie Daten mit MongoDB -Stich. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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