사용자 도구

사이트 도구


programming:documentation:swagger

차이

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

차이 보기로 링크

양쪽 이전 판 이전 판
다음 판
이전 판
다음 판 양쪽 다음 판
programming:documentation:swagger [2018/07/18 17:00]
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 +
-@Controller +
-public class SwaggerController { +
-  @Autowired +
-    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> +
- +
-===== SpringBoot ===== +
-  * [[http://springboot.tistory.com/24|Spring REST API에 Swagger 2 설정하기]] +
  
 +===== Swagger2MarkUp =====
 +  * [[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.
 +  * [[https://github.com/Swagger2Markup/swagger2markup-gradle-plugin|Swagger2Markup/swagger2markup-gradle-plugin]] A Swagger2Markup Gradle Plugin.
 +  * [[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 문서로 바꾼다.
programming/documentation/swagger.txt · 마지막으로 수정됨: 2023/08/17 15:39 저자 kwon37xi