6. Januar 2021
| |
0 Kommentar

Lassen Sie uns zusammen eine Schnittstelle bauen und lernen Sie das 3-Schichten-Konzept kennen

Wir möchten Ihnen in diesem Artikel per Tutorial aufzeigen, wie schnell man eine Schnittstelle bauen kann (insbesondere mit MuleSoft) und die Möglichkeit bieten, eine praktische Hands-On Experience zu erlangen. So können Sie sich ein Gefühl verschaffen, was mit APIs alles möglich ist und wie diese grundsätzlich funktionieren.

«APIs können potenziell drei Aufgaben erfüllen: Sie stellen erstens Daten aus Datenbanken oder Applikationen zur Verfügung, übernehmen zweitens die Aufgabe zur Daten-Verknüpfung oder Daten-Transformation und stellen drittens die Customer Experience über die Daten-Versorgung von Applikationen sicher.»

Dieses Zitat aus unserem Buch ‘Digitale Vernetzung für mehr Marktdominanz’ beschreibt das 3-Schichten-Konzept. Technisch sind APIs nach dem API-led Connectivity-Ansatz standardisiert: Hierbei betrachtet man eine Schnittstelle als unabhängigen Konnektor. Der Konnektor besteht aus drei Funktionskomponenten: Interface (Daten nutzerspezifisch und abgesichert den Usern zur Verfügung stellen), Orchestrierung (Transformationslogik auf Daten anwenden) und Konnektivität (Zugriff auf Quelldaten sicherstellen). Im 3-Schichten-Konzept kategorisieren wir die APIs, je nach Einsatzzweck, in drei Schichten: «APIs auf Systemebene», «APIs auf Prozessebene» und «APIs auf Experience-Ebene». Alle unsere API-Projekte halten dieses Konzept so gut wie möglich ein; dies erlaubt es uns, die Flexibilität von Applikationsnetzwerken zu verbessern, die Wiederverwendbarkeit von Schnittstellen zu erleichtern und die Autonomie der Schnittstellen zu erhöhen.

Falls Probleme bei der Durchführung des Tutorials entstehen, Sie Fragen zu den verwendeten Produkten oder konzeptuelle Fragen zu den Vorteilen von APIs haben, zögern Sie nicht, uns direkt zu kontaktieren. Wir helfen Ihnen gerne weiter!

Zeitplanung

Die Vorbereitung zum Tutorial wird in etwa eine Stunde in Anspruch nehmen, die Durchführung der Schritt-für-Schritt-Anleitung wird circa zwei Stunden dauern.

Vorbereitung

Stellen Sie sicher, dass folgende Punkte im Voraus erledigt sind:

Ziel

Wir werden im System-Layer einen Konnektor zu Salesforce konfigurieren und per MuleSoft als Schnittstelle zur Verfügung stellen. Danach werden wir auf Ebene des Process-Layers diese geschaffene Schnittstelle wiederverwenden und die Daten transformieren. Im Experience-Layer werden wir die transformierten Daten in ein für eine Profilansicht im Browser gut verwendbares Format bringen.

Schnittstelle

Erste Schritte

  1. Öffnen Sie Anypoint Studio und legen Sie ein neues Projekt an (File à New → Mule Project, ‘demo-projekt’ im Feld ‘Project Name’ einfügen und ‘Finish’ klicken)
  2. Erstellen Sie die Mule Configuration Files für die verschiedenen Schnittstellen (Rechtsklick auf das neu erstellte ‘demo-projekt’ → New à Mule Configuration File, File-Namen gemäss der Zielarchitektur: s-sf, p-calculateAge und e-website) und löschen Sie das automatisch generierte ‘demo-projekt.xml’-File.

Ihr Projekt sollte nun so aussehen:

Schnittstelle

System Layer

Schnittstelle
Schnittstelle

Dieser Dataweave-Code transformiert die Payload (das Resultat der letzten Operation) in ein JSON-Format.

Die System-Layer ist nun fertig und der erstellte Flow sollte folgendermassen aussehen:

Schnittstelle

Sie können die Schnittstelle nun auch mit dem Browser testen: Klicken Sie dazu mit der rechten Maustaste auf das Projekt, öffnen Sie das Dropdown beim Punkt ‚Run as…‘ und wählen Sie den Punkt ‚Mule Application‘. Sobald Sie folgende Meldung in der Konsole sehen, ist die Schnittstelle erreichbar:

Schnittstelle

Öffnen Sie jetzt Ihren Browser und rufen Sie diese URL auf: ‚localhost:8081/contacts‘. Sie sollten folgendes Resultat erhalten:

Schnittstelle

Vergessen Sie danach nicht, den Server wieder zu beenden (rotes Stoppzeichen in der Konsole von Anypoint Studio).

Process-Layer

Schnittstelle

Bemerkenswert sind hier drei Punkte (siehe Nummern im Dataweave-Code):

Der Process-Layer ist nun fertig. Sie können die Schnittstelle testen, indem Sie das Projekt starten (gleich wie oben beschrieben, oder über das grüne Play-Symbol in der Werkzeugleiste) und in Ihrem Browser die URL ‚localhost:8081/namesWithAge‘ aufrufen.

Experience-Layer

Für die Ansicht einzelner Personen auf einer Profilseite erstellen wir eine spezifische Schnittstelle.

Schnittstelle
Schnittstelle

Hier selektieren wir ein einzelnes Objekt aus dem Ergebnisarray der p-calculateAge-Schnittstelle (an der Position der mitgelieferten Nummer hinter der URL, die wir als Variable im Flow gespeichert haben).

So sollte der Flow nun aussehen:

Schnittstelle

Wir können jetzt die Schnittstelle erneut testen: Rufen Sie im Browser folgende URL auf: ‚localhost:8081/contact/1‘. Wir sehen, dass wir nur noch eine Person geliefert bekommen, mit einem Objekt Geburtsdatum (bestehend aus dem Jahr, dem Monat und dem Tag) und dem in der Prozess-Layer berechneten Alter.

Schnittstelle

Sie können die Zahl hinter ‚/contact/…‘ ändern und werden feststellen, dass sich das Resultat verändert.

Herzlichen Glückwunsch! Sie haben erfolgreich eine API nach dem 3-Schichten-Konzept erstellt und die Vorteile dieses Konzeptes techniknah kennenlernen können. Falls wir Sie in dieser Thematik unterstützen dürfen, melden Sie sich bei uns – via Kontaktformular, E-Mail oder Telefon.

Fabian Rauschenbach - Valion AG
Fabian Rauschenbach
Technical Consultant
jean-marc
Jean-Marc Riser
Senior Technical Consultant

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.