Ich habe die Swagger-Benutzeroberfläche verwendet, um meine REST-Webservices anzuzeigen, und sie auf einem Server gehostet.
Auf diesen Dienst von Swagger kann jedoch nur auf einem bestimmten Server zugegriffen werden. Wenn ich offline arbeiten möchte, weiß jemand, wie ich mit der Swagger-Benutzeroberfläche ein statisches PDF erstellen und damit arbeiten kann? Darüber hinaus kann eine PDF-Datei problemlos an Personen weitergegeben werden, die keinen Zugriff auf den Server haben.
Danke vielmals!
pdf
swagger-ui
Aman Mohammed
quelle
quelle
Ich habe mithilfe von https://github.com/springfox/springfox und https://github.com/RobWin/swagger2markup einen Weg gefunden
Verwendete Swagger 2, um die Dokumentation zu implementieren.
quelle
Sie können Ihr REST-Projekt so ändern, dass beim Erstellen des Projekts die erforderlichen statischen Dokumente (HTML, PDF usw.) erstellt werden.
Wenn Sie ein Java Maven-Projekt haben, können Sie das folgende Pom-Snippet verwenden. Es verwendet eine Reihe von Plugins, um eine PDF- und eine HTML-Dokumentation (der REST-Ressourcen des Projekts) zu generieren.
Bitte beachten Sie, dass die Reihenfolge der Ausführung wichtig ist, da die Ausgabe eines Plugins zur Eingabe für das nächste wird:
Das Asciidoctor-Plugin setzt voraus, dass eine ADOC-Datei vorhanden ist, an der gearbeitet werden kann. Sie können eine erstellen, die einfach diejenigen sammelt, die vom swagger2markup-Plugin erstellt wurden:
Wenn Sie möchten, dass Ihr generiertes HTML-Dokument Teil Ihrer War-Datei wird, müssen Sie sicherstellen, dass es auf der obersten Ebene vorhanden ist. Statische Dateien im Ordner WEB-INF werden nicht bereitgestellt. Sie können dies im Maven-War-Plugin tun:
Das War-Plugin arbeitet mit der generierten Dokumentation. Daher müssen Sie sicherstellen, dass diese Plugins in einer früheren Phase ausgeführt wurden.
quelle
Ich habe eine Website https://www.swdoc.org/ erstellt , die sich speziell mit dem Problem befasst. So automatisiert es die
swagger.json -> Asciidoc, Asciidoc -> pdf
Transformation, wie in den Antworten vorgeschlagen. Dies hat den Vorteil, dass Sie die Installationsverfahren nicht durchlaufen müssen. Es akzeptiert ein Spezifikationsdokument in Form einer URL oder nur eines rohen JSON. Das Projekt ist in C # geschrieben und die Seite lautet https://github.com/Irdis/SwDocBEARBEITEN
Es ist möglicherweise eine gute Idee, Ihre JSON-Spezifikationen hier zu überprüfen : http://editor.swagger.io/, wenn Sie Probleme mit SwDoc haben, z. B. wenn das PDF unvollständig generiert wird.
quelle
Kasse https://mrin9.github.io/RapiPdf ein benutzerdefiniertes Element mit zahlreichen Anpassungs- und Lokalisierungsfunktionen.
quelle
Für mich war die einfachste Lösung, swagger (v2) in Postman zu importieren und dann zur Webansicht zu wechseln. Dort können Sie die Ansicht "einspaltig" auswählen und mit dem Browser als PDF drucken. Keine automatisierte / integrierte Lösung, aber gut für den einmaligen Gebrauch. Die Papierbreite wird viel besser verarbeitet als beim Drucken in editor2.swagger.io, wo Bildlaufleisten dazu führen, dass Teile des Inhalts ausgeblendet werden.
quelle