2016-04-20 10 views
6

Ich bin neu zu Swagger, Verträge und Arbeiten an Spring Boot (Gradle) Projekt, wo wir gerade mit dem Umgang mit Verträgen beginnen. Ich habe Grails benutzt, ich liebe es, wie man Field-Defs in die Domain setzen kann und es wird durch den Stack vererbt.Swagger 2 Spring Boot Generieren Yml-Datei

Eine spezifische Frage und vielleicht auch eine Schweinchen Frage Frage.

Wie kann ich grundlegende Stub einer YAML-Datei aus der Standard-Controller-Klasse generieren?

Ich verstehe, ich soll ein [Name] -v1-0.yml Datei im Verzeichnis controller\src\test\resources

ich die Prahlerei-ui.html im Projekt implementiert haben erstellen und eine wirklich coole interaktive Die Webseite wird angezeigt mit der Angabe von Endpunkten und Inhalten. Verwenden Sie eine class SwaggerConfig extends WebMvcConfigurerAdapter, die zum Veröffentlichen der Schnittstellen in ui json doc Webseite dient.

Ich glaube, das Verständnis ist, dass die Yml-Datei in der Testressourcen-Verzeichnis eine feste Generation der "Verträge" sein wird und in irgendeiner Art von Testmethode verwendet, um sicherzustellen, dass die API-Signatur und Vertragspunkte nicht geändert haben, Wie ein einfacher Junit-Style-Test der Schnittstelle. (Ja/Nein?)

Ich bin faul hier denke ich mir, warum bin ich Hand hacken diese dumme Datei? Kann ein Yaml-Doc-Skelett für mich ganz einfach aus den Controller-/Modelldetails generiert werden?

Zum Beispiel auf der Seite dauert eine YML Datei und macht die ui freundliche Seite: http://editor.swagger.io/#/

Es gibt eine wirklich schöne „uber“ Probe YAML-Datei in der Seite, macht ich das schreiben muß wirklich, ich schon schrieb den Controller, javadoc, annotiert, alle möglichen coolen Sachen, die in der Lage sein sollten, zumindest einen ziemlich guten Start-Stub des Yaml zu generieren (ich gebe dir die Schuld dafür, dass du das nicht hacken willst!), bevor SpringFox Annotationen gemacht werden die mehr coole Sachen machen und wirklich in die Stadt fahren, um mehr Testverträge zu machen.

FYI: 'spring-boot-starter-web' 'spring-boot-starter-test' 'springfox-swagger-ui', version: '2.4.0'

Antwort

6

ich es bekam. Sehr einfach, warum habe ich das nirgendwo gesehen. :)

Kopieren/Einfügen der Ressourcenpfad im Browser:

http://localhost:8095/v2/api-docs?group=full-api

den erzeugten Inhalt in die Zwischenablage auswählen und kopieren.

öffnen Swagger Editor in einem Browser:

http://editor.swagger.io

Select JSON Einfügen ... aus dem Menü Datei.

Fügen Sie den generierten Swagger-JSON-Inhalt ein und klicken Sie auf Importieren.

+0

Ich bin in der Lage, die JSON mit dieser zu erzeugen.aber ich erhalte den folgenden Fehler. Swagger Fehler Keine gültige Parameterdefinition, irgendeine Idee, wie ich den Fehler und die Warnungen beheben kann? – Jobin

+0

Erstaunlich ...! Ich habe vorher manuell gearbeitet .... – Shamseer