응답 결정 흐름

요청 의도에서 상태 코드와 본문 형태를 고른다

Route Handler는 메서드 이름만 맞추는 것이 아니라 입력 위치, 성공 상태, 오류 상태, 반환 본문을 같은 의도에서 결정해야 한다.

GET

읽기

경로 값과 검색 조건을 읽고, 찾은 데이터를 JSON 본문으로 돌려준다.

200 또는 404
POST

생성

요청 본문을 검증한 뒤 새 리소스를 만들고 생성 결과를 함께 반환한다.

201 또는 400
PUT

전체 교체

대상 식별자와 완전한 본문이 모두 필요하다. 누락 필드는 실패로 본다.

200 또는 400/404
PATCH

부분 수정

바뀐 필드만 검증하고 적용한다. 응답에는 변경된 결과나 요약을 담는다.

200 또는 400/404
DELETE

삭제

대상만 확인하고 성공하면 본문 없이 끝낸다. 없으면 찾지 못한 상태를 돌려준다.

204 또는 404
데이터 본문

클라이언트가 바로 써야 할 때

조회, 생성, 수정처럼 화면 상태를 갱신해야 하면 NextResponse.json(...)으로 결과를 명시한다.

본문 없음

성공 사실만 필요할 때

삭제 성공처럼 전달할 데이터가 없으면 204와 new NextResponse(null)을 함께 둔다.

오류 본문

사용자가 조치해야 할 때

입력 오류나 대상 없음은 상태 코드만 두지 말고 어떤 값이 문제인지 짧은 JSON으로 알려준다.