[REST API] 발전된 REST API 기능 개요 & Swagger

민지·2024년 3월 14일
0

REST API - Spring Boot

목록 보기
14/27

발전된 REST API 기능 개요

지금까지의 포스팅에서는 기본 REST API에 대해 배웠다.

  • resource 만드는 법, resource에서 작업을 수행하는 법, REST API에 대한 유효성 검사 실행하는 법 등등..

이번 포스팅부터는 REST API의 고급 기능을 살펴보겠다!

앞으로 살펴볼 REST API 기능들

  • Documentation
    • REST API에 대한 문서를 어떻게 생성할 수 있을까? - open api, swagger
  • Content Negotiation
    • 지금까지의 response가 json 형식을 리턴했는데, 소비자가 xml 형식을 기대한다면?
  • Internationalization - i18n
  • Versioning
  • HATEOAS
  • Static Filtering
  • Dynamic Filtering
  • Monitoring

Open API Specification과 Swagger의 이해

REST API 소비자들을 위해, 개발자가 만든 REST API에는 해당 API를 설명해주는 문서가 있어야 한다.

REST API에 대한 문서 생성하기 전에 이해해야 하는 2가지 용어가 있다.
Swaggeropen api이다.

  • 2011

    • Swagger Specification : REST API 문서 형식을 구조화한 양식
    • Swagger tools : 이런 구조화한 양식을 눈에 보기 쉽게 시각화시킨 도구들
  • 2016

    • Open api specification : Swagger specification을 기반으로 만들어진 양식
    • Swagger tools : 여전히 존재해서, REST API를 시각화해주는 도구

Swagger 문서의 자동 생성 구현하기

REST API의 문서인 Swagger 문서를 생성하는 방식은 간단하다.
의존성 주입을 한 후, 특정 링크에 접속하기만 하면 된다!

pom.xml modified

<dependency>
	<groupId>org.springdoc</groupId>
	<artifactId>springdoc-openapi-starter-webmvc-ui</artifactId>
	<version>2.0.2</version>
</dependency>

URLS

각각 Swagger tool과 Open API Specification에 대한 URL들은 아래와 같다.




참고 및 출처
이 시리즈는 Udemy 강의의 내용을 정리한 것입니다.
https://www.udemy.com/course/spring-boot-and-spring-framework-korean/

profile
배운 내용을 바로바로 기록하자!

0개의 댓글