문서의 선택한 두 판 사이의 차이를 보여줍니다.
양쪽 이전 판 이전 판 다음 판 | 이전 판 | ||
programming:documentation:swagger [2015/02/04 16:43] kwon37xi |
programming:documentation:swagger [2023/08/17 15:39] (현재) kwon37xi [ReDoc] |
||
---|---|---|---|
줄 1: | 줄 1: | ||
====== Swagger ====== | ====== Swagger ====== | ||
* http:// | * http:// | ||
+ | * [[programming: | ||
+ | * -> [[programming: | ||
+ | * [[springframework: | ||
* [[https:// | * [[https:// | ||
+ | * [[https:// | ||
+ | |||
+ | ===== ReDoc ===== | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * 페이지 내 검색과 더 유려한 UI를 제공해줌. | ||
+ | |||
+ | |||
+ | ===== Swagger2MarkUp ===== | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | <code java> | ||
+ | // Spring / Swagger 에서 swagger.json 을 파일로 뽑아내는 예제 | ||
+ | |||
+ | @WebAppConfiguration | ||
+ | @RunWith(SpringJUnit4ClassRunner.class) | ||
+ | @AutoConfigureRestDocs(outputDir = " | ||
+ | @SpringBootTest(classes = {Application.class, | ||
+ | @AutoConfigureMockMvc | ||
+ | public class Swagger2MarkupTest { | ||
+ | |||
+ | private static final Logger LOG = LoggerFactory.getLogger(Swagger2MarkupTest.class); | ||
- | ===== Spring MVC and swagger ===== | ||
- | * [[https:// | ||
- | * [[https:// | ||
- | * Spring MVC Swagger 튜토리얼 시리즈 | ||
- | * [[http:// | ||
- | * [[http:// | ||
- | * Spring MVC API 적용 Servlet의 "/" | ||
- | // /css/*, /js/* 등에 대한 핸들러 추가. | ||
- | @Override | ||
- | protected void addResourceHandlers(ResourceHandlerRegistry registry) { | ||
- | registry.addResourceHandler(" | ||
- | .addResourceLocations(WEB_JAR_RESOURCE_LOCATION, | ||
- | WEB_JAR_RESOURCE_LOCATION + " | ||
- | super.addResourceHandlers(registry); | ||
- | } | ||
- | @ApiIgnore | ||
- | @Controller | ||
- | public class SwaggerController { | ||
@Autowired | @Autowired | ||
- | | + | |
+ | |||
+ | ... | ||
- | @RequestMapping("/ | + | @Test |
- | public void swagger(HttpServletResponse response) throws | + | public void createSpringfoxSwaggerJson() throws |
- | final Resource swaggerHtmlResource | + | // |
- | final String | + | |
- | final String refinedHtml | + | |
- | | + | .accept(MediaType.APPLICATION_JSON)) |
+ | .andExpect(status().isOk()) | ||
+ | .andReturn(); | ||
- | | + | MockHttpServletResponse |
- | final PrintWriter writer | + | |
- | | + | Files.createDirectories(Paths.get(outputDir)); |
- | writer.close(); | + | try (BufferedWriter writer = Files.newBufferedWriter(Paths.get(outputDir, |
+ | writer.write(swaggerJson); | ||
} | } | ||
+ | } | ||
+ | ... | ||
} | } | ||
</ | </ | ||
+ | ===== 기타 ===== | ||
+ | * https:// | ||
+ | * [[https:// |