Usei a IU do Swagger para exibir meus serviços da web REST e hospedei-os em um servidor.
No entanto, este serviço do Swagger só pode ser acessado em um servidor específico. Se eu quiser trabalhar offline, alguém sabe como posso criar um PDF estático usando a IU do Swagger e trabalhar com ele? Além disso, um PDF é fácil de compartilhar com pessoas que não têm acesso ao servidor.
Muito Obrigado!
pdf
swagger-ui
Aman Mohammed
fonte
fonte
Eu descobri uma maneira usando https://github.com/springfox/springfox e https://github.com/RobWin/swagger2markup
Usei o Swagger 2 para implementar a documentação.
fonte
Você pode modificar seu projeto REST, de modo a produzir os documentos estáticos necessários (html, pdf etc) ao construir o projeto.
Se você tem um projeto Java Maven, pode usar o snippet pom abaixo. Ele usa uma série de plugins para gerar uma documentação em pdf e html (dos recursos REST do projeto).
Esteja ciente de que a ordem de execução é importante, já que a saída de um plugin torna-se a entrada do próximo:
O plugin asciidoctor pressupõe a existência de um arquivo .adoc para trabalhar. Você pode criar um que simplesmente reúna aqueles que foram criados pelo plug-in swagger2markup:
Se você deseja que seu documento html gerado se torne parte de seu arquivo war, você deve ter certeza de que ele está presente no nível superior - arquivos estáticos na pasta WEB-INF não serão servidos. Você pode fazer isso no plugin maven-war:
O plug-in war funciona na documentação gerada - como tal, você deve certificar-se de que esses plug-ins foram executados em uma fase anterior.
fonte
Criei um site https://www.swdoc.org/ que trata especificamente do problema. Portanto, ele automatiza a
swagger.json -> Asciidoc, Asciidoc -> pdf
transformação conforme sugerido nas respostas. A vantagem disso é que você não precisa seguir os procedimentos de instalação. Ele aceita um documento de especificação na forma de url ou apenas um json bruto. O projeto é escrito em C # e sua página é https://github.com/Irdis/SwDocEDITAR
Pode ser uma boa ideia validar suas especificações json aqui: http://editor.swagger.io/ se você estiver tendo problemas com o SwDoc, como o pdf sendo gerado incompleto.
fonte
Confira https://mrin9.github.io/RapiPdf um elemento personalizado com bastante personalização e recurso de localização.
fonte
Para mim, a solução mais fácil era importar swagger (v2) para o Postman e ir para a visualização da web. Lá você pode escolher a visualização em "coluna única" e usar o navegador para imprimir em PDF. Não é uma solução automatizada / integrada, mas boa para uso único. Ele lida com a largura do papel muito melhor do que imprimir em editor2.swagger.io, onde as barras de rolagem fazem com que partes do conteúdo fiquem ocultas.
fonte