조회 한 데이터 없음
데이터 조회 요청시, 요청 한 데이터가 없을 경우 다음과 같이 처리 할 수 있다.
1) 200 + 빈 리스트
- 올바른 경로로 호출하여 200 응답, 하지만 데이터는 없으므로 빈 값, 빈 리스트 반환
2) 특정 에러 코드 (ex. 4001, 34011)
- 데이터가 없음을 특정 에러로 규정하여 에러 코드로 응답
404 에 대한 이해
사실 조회 데이터가 없음은 404 개념에 해당되는 것 같지만, 클라이언트와 서버는 404 개념에 대해 받아 들이는 것에 차이가 존재한다.
- 클라이언트 : 잘못된 "경로" 접근
- 서버 : "리소스" 존재 X
404에 대해 좀더 살펴 보면, 404는 여러 가지 기술적인 이유로 발생할 수 있다.
- 서버에서 애플리케이션이 일시적으로 비활성화되거나 제거됨
- 프록시 연결 문제 등이 발생
- 조회 요청 한 데이터가 없음
결론
클라이언트 입장에서는 상태 코드만으로
"요청한 데이터가 존재하지 않습니다"를 의미하는 404 와
"인프라나 서버 등이 잘못되었음"을 의미하는 404를 구분 할 수 없기에
요청 한 데이터가 없는 것에 대해서 200, 204 등으로 빈 리스트나 빈 문자열로 받는 것을 선호 한다.
'소프트웨어 개발자 > 좋은 API, DB 설계하기' 카테고리의 다른 글
[좋은 API 설계하기] API 응답 시 모든 상태코드 200 고정 (0) | 2024.04.21 |
---|---|
[좋은 API 설계하기] API 버전 정책 (feat. 토스페이먼츠) (0) | 2024.01.31 |
[좋은 API 설계하기] 응답 Schema 의 Null 값 처리 (0) | 2024.01.31 |
[좋은 API 설계하기] 한 페이지에 API 몇개? (0) | 2024.01.30 |
[좋은 API 설계하기] Query Parameter (쿼리파라미터) (0) | 2024.01.30 |