Den REST-Connector auf die Probe stellen | Mendix

Direkt zum Inhalt

Den REST-Connector auf die Probe stellen

Bild der Artikelüberschrift

Mendix 10.6 bietet eine neue Art der Nutzung von REST-DienstenEs bietet implizites Mapping und die Möglichkeit, Testen Sie Ihre Anrufe direkt in Studio Pro und gruppieren Sie REST-Anrufe. Ich habe die Gelegenheit genutzt, um mit dem neuen REST Connector in der Betaversion. Hier ist eine kurze Zusammenfassung meiner Erkenntnisse.

Ich dachte, ein guter Test des neuen Connectors wäre die Nutzung einer API, mit der ich noch nie gearbeitet habe. Nachdem ich nach potenziellen APIs gesucht hatte, landete ich bei Asana. Ich habe mich für Asana entschieden, weil mein Team es verwendet und es daher jede Menge Daten gibt, auf die ich zurückgreifen kann. Außerdem bietet es die Möglichkeit, später etwas zu erstellen, das Einblicke in die Arbeitsweise meines Teams und die Erreichung unserer Ziele bietet.

Bevor wir uns mit der Integration der Asana-API befassen, sind mir einige Dinge sofort ins Auge gesprungen. Lassen Sie uns diese zunächst durchgehen:

Eine vereinfachte Benutzeroberfläche

Das erste, was Ihnen auffallen wird, ist das elegante Design. Oben im Editor befinden sich links Ihre Verbindungsdetails, Parameter und Header und rechts die Antwortdaten. In dieser übersichtlichen Ansicht können Sie alle Details zur API an einem einzigen Ort sehen.

Das zweite, was Ihnen auffallen wird, ist die Möglichkeit, direkt von Studio Pro aus eine Testanfrage an die API zu senden.

Lassen Sie uns einige dieser erstaunlichen Funktionen im Detail durchgehen:

UI-Funktionen

Beim Integrieren einer API stehen Ihnen mehrere neue Funktionen zur Verfügung, die die Verwaltung Ihrer Integrationen erleichtern.

Zunächst können Sie eine Basis-URL für die API-Sammlung festlegen, die Sie integrieren. Durch Klicken auf „Konfiguration & Authentifizierung“ können Sie die Stamm-URL definieren, die für alle Anfragen verwendet wird. Im Fall von Asana lautet diese https://app.asana.com/api/1.0.

Festlegen einer Basis-URL

Nachdem Sie die Basis-URL definiert haben, wird sie allen Anfragen, die Sie aus der Sammlung stellen, vorangestellt. Sie können dies im obigen Bildschirm in Aktion sehen.

Das Erstellen neuer Anfragen ist ganz einfach. Klicken Sie auf „Anfrage hinzufügen“, um eine neue Anfrage auf dem Bildschirm zu öffnen. Um zwischen den Anfragen zu navigieren, klicken Sie auf die Registerkarte zwischen „Konfiguration & Authentifizierung“ und „Anfrage hinzufügen“. Sie sehen ein Dropdown-Menü für die Anfragen, die Sie erstellt haben.

Anfrage hinzufügen

Auch das Hinzufügen von Überschriften und Parametern ist jetzt einfacher. Beim Hinzufügen von Überschriften wird Ihnen eine Liste häufig verwendeter Optionen angezeigt. (Für alles Ungewöhnliche gibt es immer die Option „Benutzerdefiniert“).

Neuer HTTP-Header

Die neue Benutzeroberfläche ermöglicht es Ihnen außerdem, direkt in Studio Pro eine Testanfrage an den Endpunkt zu senden, ohne die App auszuführen. Wenn Ihre Anfrage korrekt integriert ist, wird die Antwort auf der rechten Seite unter Antwortdaten angezeigt.

Antwortdaten

Antwortdaten 2

Nach einer erfolgreichen Anfrage verwendet Studio Pro die Antwortdaten, um ein geeignetes Domänenmodell zu generieren, falls derzeit keines vorhanden ist. Sie können diese Datenzuordnung für die Antwort auch jederzeit neu erstellen, indem Sie auf „Neu erstellen“ klicken.

Antwortdaten 3

Asana mit dem neuen Connector integrieren

GET/Arbeitsbereiche

Als Teil meines Experiments habe ich eine GET-Anfrage an den Workspaces-Endpunkt von Asana gesendet. Dieser Endpunkt gibt die Organisation des Benutzers zurück – die Wurzel der Datenstruktur von Asana. Alle Teams, Aufgaben und Feedback-Elemente sind in der Organisationsstruktur enthalten. Ohne die GID, eine globale Kennung für den Workspace oder die Organisation, können wir nicht fortfahren.

Diese Anfrage erfordert ein PAT von Asana, da ich mich entschieden habe, OAuth für dieses einfache Experiment nicht zu implementieren. Weitere Informationen zum Abrufen eines PAT finden Sie hier werden auf dieser Seite erläutert.

Da es sich um eine GET-Anfrage handelt, müssen wir einen Autorisierungsheader definieren, um das PAT als Teil unserer Anfrage zu senden. Dann müssen wir das Token zusammen mit dem Schlüsselwort „Bearer“ senden, um unseren Benutzer zu authentifizieren.

Unter „Header“ klickte ich auf „Neu“, wählte die Header-Option „Benutzerdefiniert“ und definierte den Schlüssel „Autorisierung“ mit dem Wert „Bearer XXX_MyPAT_XXX“.

Neuer HTTP-Header

Nach nur wenigen Aktionen war ich bereit, meine Arbeit zu testen, indem ich auf „Senden“ klickte. Die Antwort war „200 OK“ und es wurde sofort ein mögliches Domänenmodell generiert, das ich dann generieren wollte.

Wenn ich diese GID zusammen mit meinem PAT verwende, sollte ich nun in der Lage sein, den Endpunkt „Create Task“ zu integrieren.

POST/Aufgabe

Asana verfügt über eine sehr flexible API und erfordert zum Erstellen einer Aufgabe außer einem autorisierten PAT und der GID des Arbeitsbereichs keine weiteren Informationen. Alle anderen Felder können leer gelassen werden. Die Aufgabe verwendet beim Erstellen Standardwerte für diese.

Ich werde jedoch weiterhin die Zeichenfolge „Name“ zusammen mit dem Booleschen Wert „Abgeschlossen“ und der Zeichenfolge „Notizen“ festlegen.

Asana hat auf der rechten Seite, wenn man die API-Dokumente ansieht, einen coolen Playground, der beim Erstellen der Anfrage hilft. Ich habe ihn gerade verwendet, um den JSON-Textkörper für die Anfrage zu erstellen. Ich habe ihn in das Feld „Textkörper“ in Studio Pro eingefügt und auf „JSON-Snippet verwenden“ geklickt. Asana hat die Daten interpretiert und unter „Textkörperstruktur“ ein mögliches Modell erstellt, das ich anwenden wollte.

Körper Struktur

Danach war ich neugierig und drückte auf Senden. Studio Pro gab sofort die Antwort „201 erstellt“ zurück. Diese Daten habe ich dann verwendet, um das Domänenmodell für die Antwort zu generieren, das die Daten nach der Implementierung tatsächlich enthalten wird.

Antwortstruktur

Jetzt musst du diesen Service nur noch in einem Microflow aufrufen. Die Aktion „Send REST Request“ findest du in deiner Toolbox unter „Integration Activities“. Nachdem du diese in deinen Flow gezogen hast, musst du nur noch den REST-Service auswählen, in unserem Fall die „CreateTask“-Anfrage.

REST-Anforderung auswählen

Danach müssen die Daten nur noch mit den Entitäten erstellt werden, die wir für die API definiert haben.

Wir können die Entitäten wie gewohnt erstellen und dabei daran denken, alle Assoziationen zueinander festzulegen. Dann stellen wir die Daten einfach der Aktion „REST-Anfrage senden“ zur Verfügung.

Senden einer REST-Anforderung

Senden Sie eine REST-Anforderung 2

Fazit

Insgesamt fand ich die Verwendung des neuen Connectors sehr intuitiv. Integrationen sind zwar mein Spezialgebiet, aber selbst Neulinge auf diesem Gebiet werden keine Probleme haben, sich damit vertraut zu machen.

Auf der anderen Seite haben Entwickler mit Erfahrung in Mendix Integrationen werden dies als eine sauberere und effizientere Möglichkeit zur Organisation und Umsetzung ihrer Arbeit empfinden.

Wie bereits erwähnt, befindet sich der Connector in der Betaphase. Er unterstützt derzeit keine PUT- oder DELETE-Aktionen und wir arbeiten noch daran, die Funktion zum Festlegen von Konstanten für verschiedene Authentifizierungstypen hinzuzufügen, um die Flexibilität und Sicherheit zu verbessern.

Alles in allem hat mir der neue Connector gefallen und ich fand ihn eine erfrischende Neuerung in der Art und Weise, wie wir mit REST arbeiten in Mendix.

Wählen Sie Ihre Sprache