관리 메뉴

공부기록용

React숙련주차17(REST(Path Variable vs Query Parameter)) 본문

📚강의록📚/스파르타)React

React숙련주차17(REST(Path Variable vs Query Parameter))

과부하가즈아 2023. 7. 1. 17:17

🔴REST API(REpresentational State Transfer)

🔴Path Variable vs Query Parameter


REST API(REpresentational State Transfer)

 

어떤 자원에 대해 CRUD를 진행할 수 있게 HTTP Method(GET, POST, PUT, DELETE)를 사용하여 요청을 보내는 것. 이 때, 요청을 위한 자원은 특정한 형태로 표현된다.

자원(Resource) : URI
행위(Verb) : HTTP Method
표현(Representations)

 

💫규칙
http://example.com/posts (O)
http://example.com/posts/ (X)
http://example.com/post (X)
http://example.com/get-posts (X)
--> URI는 명사를 사용하고 소문자로 작성되어야 한다.
--> 명사는 복수형을 사용한다.
--> URI의 마지막에는 /를 포함하지 않는다.

http://example.com/post-list (O)
http://example.com/post_list (X)
--> URI에는 언더바가 아닌 하이픈을 사용한다.

http://example.com/post/assets/example (O)
http://example.com/post/assets/example.png (X)
--> URI에는 파일의 확장자를 표시하지 않는다.

 

RestFul하다

REST API의 까다로운 조건을 만족시킨 통신 설계 상태를 말한다.
그 누가 보더라도 이해하기 쉽고, 사용하기 쉬운 REST API라면 “RestFul하구나” 라고 할 수 있다.


CRUD의 기능을 모두 POST method로만 이용하는 경우
URI에 행위(method)에 대한 부분이 들어가는 경우(/classes/createPeople) _ 메서드로만 표기가 되어야 함


Path Variable vs Query Parameter

 

Path Variable

/users/10
  • 이름에서도 유추할 수 있듯, 경로 자체에 변수(10)를 사용한 방법
  • 전체 데이터 또는 특정 하나의 데이터를 다룰 때 처럼, 리소스를 식별하기 위해 사용

Query Parameter

/users?user_id=10
  • 데이터를 정렬하거나 필터링 하는 경우 더 적합
/users # Fetch a list of users ➡️ Path Variable
/users?occupation=programer # Fetch a list of programer user ➡️ Query Parameter
/users/123 # Fetch a user who has id 123 ➡️ Path Variable

 

Comments