인프런 커뮤니티 질문&답변

유진이님의 프로필 이미지

작성한 질문수

모든 개발자를 위한 HTTP 웹 기본 지식

HTTP API를 만들어보자

/{id}가 뭘까요?

작성

·

422

0

안녕하세요. 

members/{id}에서 /{id}가 뭘 뜻하는거죠?

members/100이 아니라 members?id=100 

아닌가요? 제 생각에는 해당 메서드를 호출할 경우

뒤에 아이디값을 파라미터로 넘겨 주는 것 같은데

/는 디렉토리 표시 같아서 헷갈려서 질문 남깁니다.

감사합니다.

답변 1

2

안녕하세요. 유진이님, 공식 서포터즈 David입니다.

path와 query는 리소스를 식별하기 위해 함께 쓰입니다.

예를들어, /members/1은 path, ?name='david'은 query입니다.

path는 주로 계층구조로 된 정보를 포함하고, query는 주로 비계층구조로 된 정보를 포함합니다.

관례적으로 리소스를 식별할 때 id(식별자)를 /members/1과 같이 사용합니다.

물론, members?id=1과 같이 사용해도 상관없습니다. 그러나 query는 검색조건과 같은 것을 넘겨줄 때 사용합니다.

아래 글들을 함께 읽어보시길 추천드립니다.

https://velog.io/@jcinsh/Query-string-path-variable

Path: https://www.rfc-editor.org/rfc/rfc3986.html#section-3.3

Query: https://www.rfc-editor.org/rfc/rfc3986.html#section-3.4

감사합니다.

유진이님의 프로필 이미지
유진이
질문자

안녕하세요. 답변 감사합니다. controller에서 /members/{id} 이렇게 그대로 기재해서 받을 수 있는 것에 대해서 처음 알았네요. 무조건 정해진 url을 적어야 하는줄 알았습니다.