티스토리 뷰

Web/Spring Boot

REST API

개발을해보자 2020. 4. 29. 03:23

REST


REpresentational State Transfer의 약자이다.

상태를 전달하는 것을 의미한다.

다른 말로 resource를 처리하는 것이다

 

Resource를 처리하는 것에는 4가지 방식이 있고 흔히 CRUD라고 일컫는다.

( )는 HTTP에 표준으로 주어져있는 method이다.

  • C : Create(POST)
  • R : Read(GET)
  • U : Update(PUT/PATCH)
  • D : Delete(DELETE)

Resource를 지정할 때는 URI 라고 불리는 식별자를 사용하고, URL이라는 지시자를 사용하기도 한다.

 

Resource는 CollectionMember 두 가지로 나눌 수 있다.

 

Collection에 대해서는 Read(List)와 Create가 가능하다.

Member에 대해서는 Read(Detail), Update, Delete가 가능하다.

 

예시)

Restaurant의 Collection은 다음과 같이 표현된다.

http://host/restaurants

 

Restaurant의 개별적인 resource(Member)는 다음과 같이 표현된다.

id에는 1, 2 등이 들어간다. 

http://host/restaurants/{id}

 

id에는 1, 2 등이 들어간다. 

 

JSON


이렇게 접근했을 때, 어떤 결과를 받거나 정보를 넘길 때 JSON이라는 포맷을 사용한다.

JSON : Javascript에서 Object를 표현할때 쓰는 것과 마찬가지의 방법을 여러 언어에서, 여러 환경에서 표준으로 사용할 수 있게 만든 것

예시는 다음과 같다.

 

[

  {

    "id": 2019,

    "name": "식당",

    "address": "골목"

  },

  {

    "id": 2020,

    "name": "죠르디",

    "address": "니니즈"

  }

]

 

 

REST API


API들을 REST API에 맞춰 적용할 수 있다.

 

가게 목록을 얻을 때는 Collection에 대해 Read(GET) restaurants

가게 상세 정보를 얻을 때는 Member에 대해 Read(GET) restaurants/{id}

가게 추가를 할 때는 Collection에 대해  Create(POST) restaurants

가게 수정을 할 때는 Member에 대해 Update(PATCH/PUT) restaurants/{id}

가게 삭제를 할 때는 Member에 대해 Delete(DELETE) restaurants/{id}

 

REST API에 맞춰 가게 목록을 얻고, Front-end에서 그 목록을 보여줄 수 있게 한다.

'Web > Spring Boot' 카테고리의 다른 글

Controller를 이용해 가게 상세 가져오기  (0) 2020.05.02
Controller를 이용해 가게 목록 가져오기  (0) 2020.04.30
TDD의 활용  (0) 2020.04.29
테스트 주도 개발  (0) 2020.04.29
Spring Boot 프로젝트 생성  (0) 2020.04.29
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
글 보관함