2015-12-17 4 views
1

У меня есть развитый веб-сервис Rest, который задокументирован чванством, используя аннотации swagger-springmvc. Теперь я хочу использовать редактор swagger для генерации кода веб-сервиса Restore на стороне клиента, но редактор swagger требует файла Yaml или Json. Вы знаете, есть ли способ создать этот файл? Спасибо заранее наСгенерируйте файл Yaml или Json из документации Swagger.

EDIT: Это может быть сделано с помощью чванство-МВН-плагин, но я не нашел пример о том, как это сделать?

ответ

0

Я отвечаю на себя :). Вы можете сгенерировать клиента и на стороне сервера документации (YAML, JSON и HTML) с помощью swagger-maven-plugin

Добавьте это в pom.xml:

..... 
<plugin> 
       <groupId>com.github.kongchen</groupId> 
       <artifactId>swagger-maven-plugin</artifactId> 
       <version>3.0.1</version> 
       <configuration> 
        <apiSources> 
         <apiSource> 
          <springmvc>true</springmvc> 
          <locations>com.yourcontrollers.package.v1</locations> 
          <schemes>http,https</schemes> 
          <host>localhost:8080</host> 
          <basePath>/api-doc</basePath> 
          <info> 
           <title>Your API name</title> 
           <version>v1</version> 
           <description> description of your API</description> 
           <termsOfService> 
            http://www.yourterms.com 
           </termsOfService> 
           <contact> 
            <email>[email protected]</email> 
            <name>Your Name</name> 
            <url>http://www.contact-url.com</url> 
           </contact> 
           <license> 
            <url>http://www.licence-url.com</url> 
            <name>Commercial</name> 
           </license> 
          </info> 
          <!-- Support classpath or file absolute path here. 
          1) classpath e.g: "classpath:/markdown.hbs", "classpath:/templates/hello.html" 
          2) file e.g: "${basedir}/src/main/resources/markdown.hbs", 
           "${basedir}/src/main/resources/template/hello.html" --> 
          <templatePath>${basedir}/templates/strapdown.html.hbs</templatePath> 
          <outputPath>${basedir}/generated/document.html</outputPath> 
          <swaggerDirectory>generated/swagger-ui</swaggerDirectory> 
          <securityDefinitions> 
           <securityDefinition> 
            <name>basicAuth</name> 
            <type>basic</type> 
           </securityDefinition> 
          </securityDefinitions> 
         </apiSource> 
        </apiSources> 
       </configuration> 
      </plugin> ........ 

Вы можете скачать * .hbs шаблон по этому адресу: https://github.com/kongchen/swagger-maven-example

Выполнение mvn swagger: сгенерируйте Документация JSon будет сгенерирована в каталоге project/generated/swagger /. мимо него по этому адресу: http://editor.swagger.io

и генерировать то, что вы хотите (на стороне сервера или на стороне клиента API в предпочитаемом технологии)

Смежные вопросы