Der OpenAPI-Parser

Eine native Delphi-Klasse, die OpenAPI-3.0-, 3.1- und 3.2-Spezifikationen liest, dazu Swagger-2.0-Dokumente, die schon beim Einlesen konvertiert werden, und dir programmatischen Zugriff auf jeden Endpunkt, jedes Schema und jede Security-Definition gibt.

TsgcOpenAPI

Es gibt nichts, was du auf ein Formular ziehen könntest. sgcOpenAPI registriert keine Komponenten und liefert kein Design-Time-Paket, du erzeugst TsgcOpenAPI also im Code, aus sgcOpenAPI_Classes.pas, und liest jede Spezifikation hinein.

Spezifikationen laden

ReadFromFile nimmt einen Pfad, Read nimmt das Dokument als String, und eine URL lädt das Kommandozeilenwerkzeug vorher herunter. JSON und YAML werden beide lokal gelesen, und ein Swagger-2.0-Dokument wird ebenfalls lokal nach OpenAPI 3.0 konvertiert.

API-Modell erkunden

Paths, Webhooks, Components, Security, Servers, Tags und Info sind Eigenschaften des Objekts, damit erreichst du Pfade, Operationen, Parameter, Request- und Response-Bodies, Schemas und Security-Schemata über ein streng typisiertes Modell.

Code generieren

TsgcOpenAPI_Parser_Client_Pascal stammt von derselben Klasse ab, der Generator ist also der Leser mit einem Emitter obendrauf. Leite davon ab, um Pascal-Units zu erzeugen, oder lauf selbst durch das Modell für eigenes Tooling und Automatisierung.

Parser-Details

Referenzauflösung

Ein $ref bleibt als _Ref am Objekt stehen, statt eingebettet zu werden, das Modell ist für dich also nicht dereferenziert. Externe Datei- und URL-Referenzen holt vorher TsgcOpenAPI_Bundle herein, bettet sie ein, merkt sich das bereits Besuchte und stoppt bei einer maximalen Tiefe.

Schema-Komposition

AllOf, OneOf und AnyOf werden in das Schema-Objekt gelesen, zusammen mit Discriminator und seinem Mapping, und der Codegenerator flacht sie zu Pascal-Klassen ab.

Spezifikationsvalidierung

Warnings sammelt alles, was der Leser nicht umsetzen konnte, vom fehlenden info-Objekt bis zu einem Keyword, das der Generator ignoriert, und wird bei jedem Lesen geleert. Zeile und Spalte werden für ein YAML-Dokument gemeldet, das sich nicht parsen lässt.

Bestes Preis-Leistungs-Verhältnis: All-AccessAlle eSeGeCe-Produkte, inklusive Premium-Support, ab €1,059 pro Jahr.
All-Access-Preise ansehen

Probier den Parser aus

Lade die kostenlose Testversion herunter und parse deine erste OpenAPI-Spezifikation in wenigen Minuten.