[Network]REST, REST API란?

EB·2021년 9월 22일
0

💻REST란?

REST(Representational State Transfer API)의 약자로, 자원을 이름으로 구분하여 해당 자원의 상태를 주고 받는 모든것을 의미.

💻 REST API 디자인 가이드

1) URI는 정보의 자원을 표현해야한다.

  • 리소스 명은 동사보다 명사 를 사용한다.
  • 대문자보다 소문자를 사용한다.

리소스: 회원 (명사)
행위 : (동사)

  • 회원 목록 조회 /members
  • 회원 조회 /members/{id}
  • 회원 등록 /members/{id}
  • 회원 수정 /members/{id}
  • 회원 삭제 /members/{id}

2) 자원에 대한 행위는 HTTP Method(GET,POST,PUT,DELETE)로 표현한다.

  • URI에 HTTP Method가 들어가면 안된다.
    ex) GET /members/delete/1 👉 DELETE /members/1
  • 행위에 대한 동사표현이 들어가면 안된다.(CRUD기능을 나타내는것은 URI에 사용X)
    ex) GET /members/insert/1 👉 POST /members/2

3) 마지막에 슬래시 (/)를 포함하지 않는다.
4) 언더바(_) 대신 하이픈(-)을 사용한다.
5) 파일 확장자는 URI에 포함하지 않는다.

📌 HTTP 메서드

메서드역할설명
GET리소스 조회서버에 전달하고 싶은 데이터 query(쿼리 파라미터)로 전달
POST요청 데이터 처리, 주로 등록에 사용메시지 바디를 통해 서버로 요청 데이터 전달 ➡ 들어온 데이터를 처리하는 모든 기능 수행
PUT리소스를 완전히 대체, 해당 리소스가 없으면 생성💡중요! 클라이언트가 리소스를 식별! 클라이언트리소스 위치를 알고 URI 지정(POST와 차이점)리소스를 완전히 대체 ex) username 필드와 age 필드가 있을 때 age 필드만 보낼경우 username 필드는 삭제 된다.(완전 덮음)
DELETE리소스 삭제
profile
👩‍💻✨junior developer

0개의 댓글