J'ai utilisé l'interface utilisateur de Swagger pour afficher mes services Web REST et je les ai hébergés sur un serveur.
Cependant, ce service de Swagger n'est accessible que sur un serveur particulier. Si je souhaite travailler hors ligne, est-ce que quelqu'un sait comment créer un PDF statique à l'aide de l'interface utilisateur de Swagger et l'utiliser? De plus, un PDF est facile à partager avec des personnes qui n'ont pas accès au serveur.
Merci beaucoup!
pdf
swagger-ui
Aman Mohammed
la source
la source
J'ai trouvé un moyen en utilisant https://github.com/springfox/springfox et https://github.com/RobWin/swagger2markup
Utilisation de Swagger 2 pour implémenter la documentation.
la source
Vous pouvez modifier votre projet REST, afin de produire les documents statiques nécessaires (html, pdf, etc.) lors de la construction du projet.
Si vous avez un projet Java Maven, vous pouvez utiliser l'extrait de code pom ci-dessous. Il utilise une série de plugins pour générer un pdf et une documentation html (des ressources REST du projet).
Veuillez noter que l'ordre d'exécution est important, puisque la sortie d'un plugin devient l'entrée du suivant:
Le plugin asciidoctor suppose l'existence d'un fichier .adoc sur lequel travailler. Vous pouvez en créer un qui rassemble simplement ceux qui ont été créés par le plugin swagger2markup:
Si vous voulez que votre document html généré fasse partie de votre fichier war, vous devez vous assurer qu'il est présent au niveau supérieur - les fichiers statiques du dossier WEB-INF ne seront pas servis. Vous pouvez le faire dans le maven-war-plugin:
Le plugin war fonctionne sur la documentation générée - en tant que tel, vous devez vous assurer que ces plugins ont été exécutés dans une phase antérieure.
la source
J'ai créé un site Web https://www.swdoc.org/ qui traite spécifiquement du problème. Donc, il automatise la
swagger.json -> Asciidoc, Asciidoc -> pdf
transformation comme suggéré dans les réponses. L'avantage de ceci est que vous n'avez pas besoin de suivre les procédures d'installation. Il accepte un document de spécification sous forme d'url ou simplement un json brut. Le projet est écrit en C # et sa page est https://github.com/Irdis/SwDocÉDITER
Ce pourrait être une bonne idée de valider vos spécifications json ici: http://editor.swagger.io/ si vous rencontrez des problèmes avec SwDoc, comme le pdf généré incomplet.
la source
Checkout https://mrin9.github.io/RapiPdf un élément personnalisé avec beaucoup de fonctionnalités de personnalisation et de localisation.
la source
Pour moi, la solution la plus simple était d'importer swagger (v2) dans Postman, puis d'accéder à la vue Web. Là, vous pouvez choisir la vue "colonne unique" et utiliser le navigateur pour imprimer au format PDF. Pas une solution automatisée / intégrée mais bonne pour un usage unique. Il gère beaucoup mieux la largeur du papier que l'impression à partir de editor2.swagger.io, où les barres de défilement provoquent le masquage de certaines parties du contenu.
la source