Altova MapForce 2025 Enterprise Edition

In diesem Kapitel wird die manuelle Definition für einen HTTP API-Aufruf beschrieben. Um einen HTTP API-Aufruf manuell zu konfigurieren, öffnen Sie das Dialogfeld Webservice-Call-Einstellungen und wählen Sie im Abschnitt Service-Definition die Option Manuell aus. In den folgenden Unterabschnitten werden die Parameter beschrieben, die Sie konfigurieren können.

 

In der Abbildung unten sehen Sie die manuelle Definition eines Beispiels für einen HTTP API-Aufruf.

mf_ws_01_zoom70

Optional haben Sie die Möglichkeit, die Webservice-Einstellungen durch Klick auf die Schaltfläche Aus WADL-Datei importieren (siehe Import aus WADL) zu importieren, falls Sie die WADL-Datei des Webservice zur Verfügung haben. Wenn Sie die Webservice-Parameter aus einer URL extrahieren möchten, können Sie auf Von URL importieren klicken (siehe Import aus URL).

 

Request-Methode

Mit dieser Einstellung wird die HTTP-Methode definiert, die MapForce zum Aufrufen des Webservice verwenden soll (z.B. GET, POST oder PUT, usw.). Sie können einen Wert aus der vorhandenen Liste auswählen oder den Namen der Request-Methode eingeben. Beachten Sie bei den Namen der HTTP-Methoden die Groß- und Kleinschreibung.

 

Verbindungseinstellungen

URL

Im Textfeld URL wird die Adresse (URL) des aufzurufenden Webservice definiert.

 

Dynamische URL (wird durch Mapping bereitgestellt)

Wenn Sie die URL des Webservice über das Mapping bereitstellen möchten, aktivieren Sie das Kontrollkästchen Dynamische URL (wird durch Mapping bereitgestellt). Dadurch wird in der Webservice-Konponente im Mapping ein zusätzlicher Input-Konnektor erstellt, mit dem Sie einen Input verbinden können, der die URL des Webservice bereitstellt.

 

Anmerkung: Wenn das Kontrollkästchen Dynamische URL (wird durch Mapping bereitgestellt) aktiviert ist, wird das Textfeld URL deaktiviert und Sie müssen die URL über das Hauptmapping bereitstellen. Für HTTP APIs bedeutet dies außerdem, dass Sie in der Tabelle Parameter nur Header-Parameter definieren können.

 

Bei vollständig oder teilweise dynamischen URLs können Sie die URL flexibel nach Bedarf anpassen. So könnten Sie das Mapping etwa in der Entwicklungsphase mit einer bestimmten URL ausführen und in der Produktion eine andere URL verwenden, ohne das Mapping ändern zu müssen. Bei einer URL wie https://{host}/some/path/to/service wäre dies möglich, vorausgesetzt, der Host-Name ist der einzige Unterschied zwischen der Produktions- und der Test-URL und Sie stellen diese als Parameter für das Mapping bereit. Beachten Sie, dass durch teilweise dynamische URLs eine strengere Validierung erzwungen wird, da nur die designierten URL-Teile durch mapbare Werte oder Laufzeitwerte ersetzt werden.

 

Bei vollständig dynamischen URLs ist die gesamte URL mapbar und Sie haben vollständige Kontrolle darüber. Die einzige Voraussetzung ist, dass die URL mit http:// oder https:// beginnt und es sich um eine gültige URL handeln muss. Bei dynamischen URLs kann außerdem die von einem Webservice-Aufruf retournierte URL als Input für eine andere Komponente, die denselben (oder einen anderen) Webservice aufrufen kann, bereitgestellt werden.

 

Timeout

Der Timeout-Parameter definiert das Intervall, nach dem für den Webservice-Aufruf eine Zeitüberschreitung festgestellt wird, falls vom Server keine Antwort kommt. Wählen Sie Unendlich, falls beim Aufruf unbeschränkt lange auf eine Antwort gewartet werden soll.

 

 

Anmerkungen zu Parametern in einer URL

Sie haben die Möglichkeit, bestimmte Teile der URL in Parameter zu verwandeln und über das Hauptmapping Werte für diese Parameter bereitzustellen. Beachten Sie bei auf diese Art definierten URLs Folgendes:

 

Wenn Sie einen Webservice mit Vorlagen- oder Matrix-Parametern aufrufen, setzen Sie die Parameter in geschweifte Klammern, z.B.: http://example.org/api/products/{id}. Definieren Sie anschließend die Einstellungen der einzelnen Parameter in der Tabelle "Parameter". MapForce verarbeitet die Parameternamen innerhalb geschweifter Klammern zur Laufzeit und erzeugt die endgültige URL, die die tatsächlichen Werte enthält.

Wenn Sie einen Webservice mit URL-Abfrageparametern (z.B. http://example.org/api/products?sort=asc&category=1&page=1) aufrufen, geben Sie den Abfrageteil nicht in das URL-Textfeld ein, sondern definieren Sie die Parameter nur in der Tabelle "Parameter" und stellen Sie sicher, dass diese als Abfrage-Parameter definiert sind.

 

Strukturen

In diesem Abschnitt des Dialogfelds können Sie die Request- und Response-Sturkturen Ihres Webservice-Aufrufs auswählen. Wenn Sie Webservices aufrufen, die Inhalt im Body-Teil der Request Message erwarten oder die Inhalt im Body-Teil der Response Message zurückgeben, können Sie die Request- und Response-Struktur als einen der folgenden Typen definieren:

 

Keine Struktur

XML

JSON

Protocol Buffer

 

Anmerkung:In mit MapForce erstellten Webservice-Aufrufen können Sie als Request- oder Response-Struktur Standard-JSON verwenden; JSON Lines- oder JSON5-Strukturen werden nicht unterstützt.

 

Die hier ausgewählte Struktur bestimmt, welche mapbaren Datenelemente im Mapping als Children des Datenelements Body mf_ic_body angezeigt werden sollen.

 

Nähere Informationen zu Request- und Response-Strukturen finden Sie unter Request/Response-Strukturen.

 

Parameter

Wenn Sie einen Webservice mit URL-Parametern aufrufen, so müssen die Parameter im Abschnitt Parameter des Dialogfelds Webservice-Call-Einstellungen definiert werden (Abbildung unten). In diesem Dialogfeld können Sie auch den Webservice Request mit benutzerdefinierten Headern definieren.

 

Als Alternative zur manuellen Definition können Sie die Parameter des Webservice automatisch ausfüllen (durch Import aus einer vorhandenen URL oder einer WADL-Datei).

mf_ws_03

Nähere Informationen zu Parametern finden Sie unter Parameter.

 

HTTP-Sicherheitseinstellungen

In den folgenden Szenarien müssen unter Umständen HTTP-Sicherheitseinstellungen konfiguriert werden:

 

Der Webservice wird über HTTPS aufgerufen. Dafür ist ein Client-Zertifikat erforderlich.

Vom Server wird ein falsches Zertifikat verwendet. Sie möchten zulassen, dass der Host-Name zwischen Zertifikat und Request nicht übereinstimmt.

Für den Webservice ist eine einfache HTTP-Authentifizierung oder eine OAuth 2.0-Autorisierung erforderlich.

 

Nähere Informationen dazu finden Sie unter HTTP-Sicherheitseinstellungen.

 

Alle Dateipfade relativ zur MFD-Datei speichern

Wenn diese Option aktiviert ist, speichert MapForce die im Dialogfeld Komponenteneinstellungen angezeigten Dateipfade relativ zum Ordner, in dem sich die MapForce Design (.mfd)-Datei befindet. Siehe auch Relative und absolute Pfade.

 

© 2018-2024 Altova GmbH