He utilizado la interfaz de usuario de Swagger para mostrar mis servicios web REST y los alojé en un servidor.
Sin embargo, solo se puede acceder a este servicio de Swagger en un servidor en particular. Si quiero trabajar sin conexión, ¿alguien sabe cómo puedo crear un PDF estático usando la interfaz de usuario de Swagger y trabajar con él? Además, un PDF es fácil de compartir con personas que no tienen acceso al servidor.
¡Muchas gracias!
pdf
swagger-ui
Aman Mohammed
fuente
fuente
Descubrí una forma usando https://github.com/springfox/springfox y https://github.com/RobWin/swagger2markup
Usé Swagger 2 para implementar la documentación.
fuente
Puede modificar su proyecto REST, para producir los documentos estáticos necesarios (html, pdf, etc.) al construir el proyecto.
Si tiene un proyecto Java Maven, puede usar el fragmento de pom a continuación. Utiliza una serie de complementos para generar un pdf y una documentación html (de los recursos REST del proyecto).
Tenga en cuenta que el orden de ejecución es importante, ya que la salida de un complemento se convierte en la entrada del siguiente:
El complemento asciidoctor asume la existencia de un archivo .adoc para trabajar. Puede crear uno que simplemente recopile los que fueron creados por el complemento swagger2markup:
Si desea que su documento html generado se convierta en parte de su archivo war, debe asegurarse de que esté presente en el nivel superior; los archivos estáticos de la carpeta WEB-INF no se servirán. Puede hacer esto en el plugin maven-war-plugin:
El complemento war funciona en la documentación generada; como tal, debe asegurarse de que esos complementos se hayan ejecutado en una fase anterior.
fuente
Creé un sitio web https://www.swdoc.org/ que trata específicamente el problema. Entonces automatiza la
swagger.json -> Asciidoc, Asciidoc -> pdf
transformación como se sugiere en las respuestas. El beneficio de esto es que no necesita seguir los procedimientos de instalación. Acepta un documento de especificaciones en forma de url o simplemente un json sin formato. El proyecto está escrito en C # y su página es https://github.com/Irdis/SwDocEDITAR
Podría ser una buena idea validar sus especificaciones json aquí: http://editor.swagger.io/ si tiene algún problema con SwDoc, como si el pdf se genera incompleto.
fuente
Consulte https://mrin9.github.io/RapiPdf, un elemento personalizado con muchas funciones de personalización y localización.
fuente
Para mí, la solución más sencilla fue importar swagger (v2) en Postman y luego ir a la vista web. Allí puede elegir la vista de "columna única" y utilizar el navegador para imprimir en pdf. No es una solución automatizada / integrada, pero es buena para un solo uso. Maneja el ancho del papel mucho mejor que imprimir desde editor2.swagger.io, donde las barras de desplazamiento ocultan partes del contenido.
fuente