사용자 도구

사이트 도구


programming:documentation:swagger

차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

양쪽 이전 판 이전 판
다음 판
이전 판
programming:documentation:swagger [2018/07/12 08:38]
kwon37xi
programming:documentation:swagger [2019/02/22 17:25] (현재)
kwon37xi
줄 1: 줄 1:
 ====== Swagger ====== ====== Swagger ======
   * http://​swagger.io/​   * http://​swagger.io/​
 +  * [[springframework:​springfox|SpringFox]] - Spring & Swagger
   * [[https://​github.com/​swagger-api/​swagger-core/​wiki/​Annotations|Swagger Annotations]]   * [[https://​github.com/​swagger-api/​swagger-core/​wiki/​Annotations|Swagger Annotations]]
   * [[https://​dzone.com/​articles/​why-is-swagger-json-better-than-swagger-java-clien|Why Is Swagger JSON Better Than Swagger Java Client? - DZone Java]]   * [[https://​dzone.com/​articles/​why-is-swagger-json-better-than-swagger-java-clien|Why Is Swagger JSON Better Than Swagger Java Client? - DZone Java]]
  
-===== Spring MVC and swagger ​===== +===== ReDoc ===== 
-  * [[https://​github.com/​martypitt/swagger-springmvc|Swagger SpringMVC]] +  * [[https://​github.com/​Rebilly/ReDoc|ReDoc]] : Swagger API 문서.
-  * [[https://​github.com/​adrianbk/​swagger-springmvc-demo/​tree/​master/​swagger-ui|Swagger-UI]] +
-  * Spring MVC Swagger 튜토리얼 시리즈 +
-    * [[http://​www.javacodegeeks.com/​2014/​10/​spring-rest-api-with-swagger-creating-documentation.html|Spring Rest API with Swagger – Creating documentation Swagger ​문서 ​생성]] +
-    * [[http://​www.javacodegeeks.com/​2014/​11/​spring-rest-api-with-swagger-exposing-documentation.html|Spring Rest API with Swagger – Exposing documentation]] Spring REST API를 웹 서비스로 볼 수 있게 해줌 +
-  * Spring MVC API 적용 Servlet의 "/"​가 아닌 "/​api/​*"​ 형태로 매핑되면 Swagger 적용이 복잡해진다.<​code java> +
-// /css/*, /js/* 등에 대한 핸들러 추가. +
-@Override +
-protected void addResourceHandlers(ResourceHandlerRegistry registry) { +
-  registry.addResourceHandler("​css/​**",​ "​js/​**",​ "​lib/​**",​ "​images/​**",​ "​swagger-ui.js"​) +
-    .addResourceLocations(WEB_JAR_RESOURCE_LOCATION,​ +
-        WEB_JAR_RESOURCE_LOCATION + "​css/",​ +
-        WEB_JAR_RESOURCE_LOCATION + "​js/",​ +
-        WEB_JAR_RESOURCE_LOCATION + "​lib/",​ +
-        WEB_JAR_RESOURCE_LOCATION + "​images/"​) +
-    .setCachePeriod(0);​ +
-  super.addResourceHandlers(registry);​ +
-}+
  
-@ApiIgnore +===== Swagger2MarkUp ===== 
-@Controller +  ​* [[https://github.com/Swagger2Markup/swagger2markup|Swagger2Markup/swagger2markup]] A Swagger to AsciiDoc or Markdown converter to simplify the generation of an up-to-date RESTful API documentation by combining documentation that’s been hand-written with auto-generated API documentation
-public class SwaggerController { +  * [[https://​github.com/​Swagger2Markup/​swagger2markup-gradle-plugin|Swagger2Markup/​swagger2markup-gradle-plugin]] A Swagger2Markup Gradle Plugin. 
-  @Autowired +  * [[https://github.com/Swagger2Markup/spring-swagger2markup-demo|Swagger2Markup/spring-swagger2markup-demo]] [[springframework:​springfox|SpringFox]] 로 Spring Boot 문서를 test 시에 ''​swagger.json''​ 으로 생성하고,​ 이를 가지고 [[:​asciidoc|AsciiDoc]]을 생성한뒤 [[asciidoc:​asciidoctor|AsciiDoctor]] 를 통해서 다시 HTML/PDF 문서로 바꾼다.
-    private ResourceLoader resourceLoader;​ +
- +
-  ​@RequestMapping("​/swagger"​) +
-    public void swagger(HttpServletResponse response) throws IOException { +
-      final Resource swaggerHtmlResource = +
-        resourceLoader.getResource("​classpath:​/META-INF/resources/sdoc.jsp"​);​ +
- +
-      final String swaggerHtmlContents = +
-        CoupangIOUtils.toString(swaggerHtmlResource.getInputStream(),​ "UTF-8"); +
-      final String refinedHtml = swaggerHtmlContents +
-        ​.replaceAll("​http://swagger.wordnik.com", "/api/swagger"​);​ +
- +
-      response.setContentType("​text/html; charset=UTF-8"); +
-      final PrintWriter writer = response.getWriter();​ +
-      writer.write(refinedHtml);​ +
-      writer.close();​ +
-    } +
-+
-</​code>​+
programming/documentation/swagger.1531352327.txt.gz · 마지막으로 수정됨: 2018/07/12 08:38 저자 kwon37xi