[TIL] REST

bae_mung·2021년 10월 29일
0

Study

목록 보기
11/12
post-thumbnail

Representational State Transfer

웹에서 데이터를 전송하고 처리하는 방법을 정의한 인터페이스

  • URI(Uniform Resource Identifier)로 자원을 구분
  • METHOD로 자원에 대한 행위(동작) 구분
    METHOD 종류
    • GET : 자원 조회
    • POST : 자원 생성
    • DELETE : 자원 삭제
    • PUT : 자원 전체 항목 수정
    • PATCH : 자원 일부 항목 수정
  • Representation으로 자원을 나타냄 => XML JSON 포맷 등

REST URI 설계 가이드

  1. 동사(작업, 행위 표현 -> Method 설계) 사용 X ⇒ 명사 권장
  2. _(언더바) 사용 X ⇒ -(하이픈) 권장
  3. 마지막 /사용 X
  4. 확장자 사용 X

ex) 자원은 단수자원, 복수자원으로 구분할 수 있음

  • GET : ~/api/directors = 감독 리스트 조회
  • POST : ~/api/directors = 감독 복수자원 한단계 아래 자원 생성
  • PUT : ~/api/directors/:id = id에 부합하는 감독(단수자원) 수정
  • DELETE : ~/api/directors/:id = id에 부합하는 감독(단수자원) 삭제
  • GET : ~/api/directors/:id = id에 부합하는 감독(단수자원) 조회
    ~/api/directors/:age~/api/directors?age=52

REST 장/단점

장점

  • HTTP 프로토콜 사용 ⇒ 추가적인 인프라 구축 필요 X
  • Server/Client 환경
  • Stateless
    - Server Client 분리된 개발 가능

단점

  • 표준화 X

REST API

REST 서비스를 구현한 것

Restful

REST 아키텍처를 잘 준수(따른)한 것

profile
SSAFY 6th 👨‍💻🔥

0개의 댓글