Zu Hauptinhalt springen Zu ergänzendem Inhalt springen

Zusätzliche Informationen zur Extraktion von Daten mit dem HTTP-Client

Sie können den Konnektor HTTP Client (HTTP-Client) konfigurieren, wenn nur ein bestimmter Teil des Antwort-Bodys anstelle der gesamten Antwort-Payload zurückgegeben werden soll. Dazu werden die Parameter Extract a sub-part of the response (Teil der Antwort extrahieren) und Output key/value pairs (Schlüssel/Wert-Paare ausgeben) verwendet.
Die nachstehenden Beispiele basieren auf der folgenden JSON-Datei, die Datenelemente zu Alter („age“), Adresse („addresses“), Pkw („cars“) usw. der Benutzer enthält:
[
  {
    "name": "Peter",
    "age": 40,
    "male": true,
    "addresses": {
       "city": "Nantes",
       "zip": "44000",
       "street": "bd prairie au duc"
    },
    "cars": [
       {"brand": "Ford", "model": "Transit", "km": 123456},
       {"brand": "Renault", "model": "Clio", "km": 87234}
    ]
  },
   {
    "name": "Emma",
    "age": 34,
    "male": true,
    "addresses": {
       "city": "Paris",
       "zip": "75000",
       "street": "bd Saint-Germain"
    },
    "cars": [
       {"brand": "Tesla", "model": "Model 3", "km": 63456},
       {"brand": "Ford", "model": "Mustang Mach-E", "km": 32543},
       {"brand": "Volkswagen", "model": "Golf 8", "km": 43876},
    ]
  }
]

„Extract a sub-part of the response (Teil der Antwort extrahieren)“

Diese Konfiguration verarbeitet die gesamte Antwort-Payload und ermöglicht die Extraktion des Teilelements, das zurückgegeben werden soll. Wenn die Auswahlfunktion auf ein Array verweist, wird ein Ausgabedatensatz pro Element generiert.

Wert von „Extract a sub-part of the response (Teil der Antwort extrahieren) Ergebnis

<empty> (leer)

oder .

oder .root

(Bei allen drei Werten wird dasselbe Ergebnis zurückgegeben.)

.root[1]

Wenn das Dokument ein Array ist (es beginnt mit [ und endet mit ]) und Sie nur ein Element extrahieren möchten, können Sie .root verwenden, um den Index zu definieren. .[1] und [1] sind zwar nicht gültig, .root[1] extrahiert jedoch das zweite Element des Dokuments (der Index beginnt mit 0).

.root[1].cars

Ermöglicht Ihnen die Auswahl und das Durchlaufen eines Array-Teils. In diesem Beispiel wird die Liste der Pkws von Emma ausgewählt.

.root[1].cars{.km > 40000}

Ermöglicht Ihnen die Filterung der zurückgegeben Elemente. In diesem Beispiel wird die Liste der Pkws von Emma mit mehr als 40.000 km zurückgegeben.

Output key/value pairs (Schlüssel/Wert-Paare ausgeben)

Sobald Sie die Hauptdaten mithilfe des Parameters Extract a sub-part of the response (Teil der Antwort extrahieren) extrahiert haben, können Sie ebenfalls bestimmte Werte extrahieren, um einen flachen Datensatz zu erstellen.

Aktivieren Sie dazu Output key/value pairs (Schlüssel/Wert-Paare ausgeben) und fügen Sie ein paar Einträge Name / Value (Name/Wert) hinzu. Name wird dann als Feldname für den Ausgabedatensatz verwendet, Value (Wert) kann einige DSSL-Selektoren zum Abrufen von Werten aus der Antwort der im Konnektor konfigurierten HTTP-Abfrage enthalten.

In diesem Beispiel weist Extract a sub-part of the response (Teil der Antwort extrahieren) den Wert „.“ auf, d. h. die zwei Dateneinträge „Peter“ und „Emma“ werden durchlaufen:

Name/Wert Ergebnis
  • name / {.response.name}

    Ermöglicht das Abrufen von Namen.

  • age / {.response.age}

    Ermöglicht das Abrufen des Alters.

  • address1 / {.response.addresses.street}

    Ermöglicht die Einstellung des Attributs „street“ (Straße) von „address“ (Adresse) im Feld „address1“ (Adresse 1).

  • address2 / {.response.addresses.zip} {.response.addresses.city}

    Ermöglicht die Verkettung der Attribute „zip“ (PLZ) und „city“ (Stadt) aus dem Teilobjekt „addresses“ (Adressen) im Feld „address2“ (Adresse 2).

  • first_car_brand / {.response.cars[0].brand}

    Ermöglicht die Extraktion des Attributs „brand“ (Marke) des ersten Elements im Array „car“ (Pkw).

Hat diese Seite Ihnen geholfen?

Wenn Sie Probleme mit dieser Seite oder ihren Inhalten feststellen – einen Tippfehler, einen fehlenden Schritt oder einen technischen Fehler –, teilen Sie uns bitte mit, wie wir uns verbessern können!