로그인한 사용자의 To-Do 리스트 항목을 가져오는 REST API 엔드포인트를 설계할 때, RESTful API 설계 원칙에 따라 리소스 중심적이고 의미 있는 URL을 사용하는 것이 중요합니다. 다음은 베스트 프랙티스에 따라 엔드포인트를 설계하는 방법입니다.
RESTful API는 리소스(자원)를 기반으로 URL을 설계합니다. 여기서 리소스는 To-Do 항목이므로, To-Do 리스트에 대한 리소스를 표현하는 URL을 사용해야 합니다.
현재 로그인한 사용자는 보통 JWT 토큰이나 세션을 통해 인증되므로, 해당 사용자를 명시적으로 URL에 나타낼 필요가 없습니다. 따라서 URL에 사용자 정보를 포함하지 않고, GET /todos와 같이 로그인된 사용자의 리소스를 가져오는 엔드포인트를 사용하는 것이 일반적입니다.
GET /api/todos
/todos는 로그인된 사용자의 모든 To-Do 리스트 항목을 가져옵니다. 로그인된 사용자의 ID는 서버에서 JWT나 세션을 통해 알 수 있기 때문에 URL에 명시할 필요가 없습니다.GET /api/todos?status=completed
GET /api/todos?priority=high
?status=completed와 같은 쿼리 파라미터를 사용해 완료된 항목만 가져오거나, 특정 필터 조건을 적용할 수 있습니다.GET /api/todos/{todoId}
GET /api/users/{userId}/todos
로그인된 사용자의 To-Do 리스트를 가져오는 API 엔드포인트는 일반적으로 다음과 같은 형식으로 구성하는 것이 RESTful 설계의 베스트 프랙티스입니다:
GET /api/todosGET /api/todos/{todoId}GET /api/todos?status=completed이 방식은 리소스 중심적이고, 직관적이며 확장 가능한 URL 설계를 제공합니다.