사용하는 이유??
HTTP response status codes 는 특정 HTTP 요청(HTTP request)이 성공적으로 완료되었는지 확인하기 위해 사용한다.
각 번대의 의미
- 200번대 : 성공
- 400번대: 클라이언트 실패
- 500번대 서버 실패
자주?쓰이는 상태별 응답번호
200 : Ok 요청이 성공적으로 처리되었다.
- 로그인, 데이터 조회 성공
201 : Created 새로운 리소스가 생성되었다.
- 게시글 작성, 회원가입, 댓글 작성 성공
204 : No content 응답 본문(Response Body)가 없을때 사용.
- 게시글 삭제( 응답 본문이 없는 경우에 한함. 몇 개의 게시글이 삭제되었는지 응답해준다면 200 으로 응답
401 : Unauthorized 로그인 하지않은(인증 되지 않은) 사용자가 요청을 보낸 경우
- 로그인 시 아이디 또는 비밀번호 틀린경우, Header에 인증된 값(ex. JWT 토큰)을 활용해 요청을 보낸경우
403 : Forbidden 로그인 했지만(인증은 했지만) 접근 권한이 부족한 경우에 403응답
- 관리자만 접근할 수 있는 API에 ‘일반 사용자의 인증값(ex. JWT 토큰)’을 활용해 요청을 보낸 경우
404 : Not Found 클라이언트가 요청한 리소스를 찾을 수 없는 경우에 반환된다.
- 존재하지 않는 API에 요청을 보내경우
- /product/123 [GET} -->123인 상품이 존재하지 않는 경우
409 : Conflict 클라이언트의 요청이 서버의 현재 상태와 충돌하는 경우
- 중복된 리소시 생성시 : 아이디, 닉네임이 이미 존재하는 경우.
- 동시에 여러 클라이언트가 동일한 리소스 수정요청을 보낸 경우
- 이전 요청이 아직 완료되지 않은 경우에 다시 요청을 보낸경우
400 : Bad Request 클라이언트의 요청이 잘못된 경우, 401, 403, 404, 409 응답 코드에 해당되지 않을 때 사용
- 필수 매개변수가 누락
- 데이터 형식/타입 이 잘못된 형식
- 잘못된 쿼리 매개변수가 전달된 경우
- 요청의 형식이 잘못된 경우 ( 올바른 JSON 포멧이 아닌경우
500 : Internal Server Error 클라이언트에서 요청은 전부 잘 했는데, 서버 문제로 응답을 제대로 못한 경우
- 클라이언트가 제대로 된 방법으로 요청했는데, 서버에서 예외처리 또는 비지니스 로직 처리를 잘못해서 응답을 하지 못한 경우
→ 종류가 너무 많다. 필요한 코드는 아래 참고자료를 보자
참고자료
- 코드별로 의미설명
https://developer.mozilla.org/en-US/docs/Web/HTTP/Status
'프로그래밍 > Node.js' 카테고리의 다른 글
REST API : 경로 Naming, HTTP Method (0) | 2023.07.26 |
---|---|
응답방법/요청 데이터 사용법 (0) | 2023.07.25 |
Express Routing(라우팅) (0) | 2023.07.25 |
서버에 요청에 필요한 3가지 수단 정의 (0) | 2023.07.22 |
Express 로 웹서버 구축 (0) | 2023.07.14 |