Documentation de l'API Spring REST à L'aide de Swagger [fermé]

je suis à la recherche d'un outil qui pourrait m'aider à générer de la documentation API RESTful. Mon serveur est écrit en Java et utilise le cadre MVC du printemps. Je n'ai pas VUES dans mon serveur. C'est un service reposant à 100% et tout ce qu'il fait, c'est consommer JSON et cracher JSON.

je me demandais si Swagger était compatible avec les annotations de printemps?

34
demandé sur Eyal 2012-02-08 09:49:27

5 réponses

il n'y a pas actuellement de module Swagger MVC à ressort disponible (de Wordnik au moins), mais en général, activer swagger sur un service de repos basé sur JVM est assez simple.

le support du serveur Swagger est divisé en deux parties-le serveur principal et l'intégration avec le service REST. Voir le Swagger dépôt github . Swagger core définit le document qui représente le service REST, les paramètres, les valeurs autorisées, les opérations HTTP, etc. Le l'intégration du serveur transmet ce document à la structure du cadre REST. Wordnik utilise Jersey via JAX-RS et a libéré swagger-jaxrs pour faire cette intégration. Il y a aussi un module Swagger-Play qui sera publié sous peu dans le dépôt du module Play.

si vous voulez activer swagger sur un autre framework REST (comme le ressort MVC), vous suivez les étapes suivantes:

1) générer un lecteur API pour générer un COM.wordnik.swagger.core.Objet de Documentation. Voir la version JAX-RS ainsi que celle pour play .

2) Créer un endpoint REST qui renvoie une version JSON/XML de L'objet Documentation au client. De nouveau, JAX-RS et play .

3) Ajouter un filtre pour intercepter les requêtes afin de renforcer l'accès au niveau des ressources ou des objets.

Donc, en bref, il pourrait être assemblé assez facilement.

21
répondu fehguy 2012-02-08 15:57:33

Il y a un Swagger-spring mvc mise en œuvre en cours ici et "exemples d'151930920" ici .

the spec v1.2 est entièrement mise en œuvre et appuyée (c.-à-d., les modèles sont générés, avec un soutien complet pour les génériques), et il est en cours de développement.

20
répondu Marty Pitt 2014-06-17 03:54:56

une autre implémentation de Swagger pour MVC printemps est swagger4spring-web .

est similaire à Swagger-SpringMVC et prend en charge toutes les annotations Swagger et génère le schéma JSON pour les types de retour et les paramètres. Il fonctionne aussi sans annotations swagger.

5
répondu Waggins 2013-03-20 00:12:28

si vous êtes seulement après avoir généré un document API interactif (sans avoir besoin de la collaboration de style wiki), I/O Docs serait une meilleure solution nécessitant beaucoup moins d'efforts pour configurer, utiliser et personnaliser, IMHO.

il fonctionne sur nodejs et Redis. Vous avez seulement besoin d'écrire un schéma JSON de votre API et il génère un site HTML/JS qui décrit votre API et permet aux développeurs de jouer avec elle en direct à partir de leur navigateur.

j'ai l'intention d'héberger mon API sur mon serveur (comme exiger de n'importe qui d'installer 2 autres logiciels juste pour voir L'API serait fou) mais le schéma JSON lui-même a déjà une structure lisible et compacte agréable qui je pense serait suffisant pour la collaboration avec d'autres programmeurs. C'est un petit projet.

il y a un question similaire vous pourriez vouloir vérifier.

3
répondu Miranda 2017-05-23 11:54:44

Swagger 2.0 est la dernière version de Swagger.

il existe différentes variantes de Swagger maintenant disponibles pour des besoins différents.

io.swagger est le paquet pour les bibliothèques swagger et vous avez besoin de pots à ressorts séparés pour le coupler avec le ressort. C'est la version 2 de swagger.

io.springfox est Springfox Swagger2, dans lequel swagger est intégré avec le ressort.

com.mangofactory est swagger intégré avec le cadre de MVC Spring Web.

3
répondu Sampada 2016-06-03 11:58:26