티스토리 뷰

› 자주 보이 서버 응답 코드 (HTTP 상태 코드)

Status Code란?
사용자가 웹 서버에 요청을 보내면, 응답으로 보내주는 숫자 코드

- 각각의 숫자는 미리 약속된 특정한 의미를 내포
- 클라이언트는 응답 숫자를 통해 요청의 성공 여부와 진행 방향을 결정할 수 있음

 

2XX [Success]

200번대의 응답 코드는 "성공" 을 의미

 

200 [OK]

// 대표적 성공 코드 (에러 X ⇢ 요청이 성공적으로 진행됨)

즉, 서버가 요청받은 페이지를 성공적으로 제공한 것

성공에 대한 응답 코드를 200으로 통일하는 경우가 많지만,

200번대 코드들을 세분화하면 200은 주로 GET 요청의 응답으로 쓰이게 됨

 

201 [Created]

// 요청이 성공적으로 처리 + 서버가 새로운 리소스 생성 시 사용되는 코드

POST, PUT 등 요청에 대한 응답으로 주로 사용

 

3XX [Redirection]

300번대의 응답 코드는 "리다이렉션" 을 의미

즉, 요청이 완수되기 위해 추가 행동이 필요하다는 의미

 

4XX [Client Error]

400번대의 응답 코드는 "클라이언트 요청이 유효하지 않을 때" 사용

 

400 [Bad Request]

// 클라이언트가 잘못된 요청을 하거나, API에 정의되지 않은 방식으로 요청했을 때 사용

예로, 로그인 시 ID 값만 보내고 Password를 보내지 않으면 400 사용 가능

 

401 [Unauthorized] / 403 [Forbidden]

// 둘 다 클라이언트에게 권한이 없어 요청을 못 받을 때 사용

- 두 응답 코드의 차이

401 : 인증이 되지 않은 경우  로그인이 필요한 기능을 로그아웃 한 채로 요청

403 : 권한이 없는 경우  로그인은 되어있지만 관리자가 아님에 접속 권한이 없을 때

 

404 [Not Found]

// 클라이언트가 요청한 리소스를 서버에서 찾을 수 없을 때 사용 (자주 보임)

- 링크를 잘못 입력

- 오래된 링크로 사라진 위치를 참조할 시

 

5XX [Server Error]

400번대와 반대로 500번대 응답 코드는 "서버 측의 오류" 가 있을 때 사용

 

500 [Internal Server Error]

// 대략적으로 200 [OK] 와 비슷하게 서버 오류를 포괄적으로 나타내는 코드

즉, 클라이언트 요청 처리 과정에서 DB에 접근 시 오류가 발생하는 등

요청이 잘못된 것이 아닌 서버 측에서 문제가 발생했을 때 사용

- 회원가입 로직 안에서 확인해 보면?

1. 이미 존재하는 ID로 회원가입 요청

2. 중간에 검사하는 로직을 구축하지 않고 무작정 DB에 추가 가입 시도

3. 유일성 문제 등으로 인해 서버 에러 (즉 DB 에러)가 발생하게 됨

⇢ 고로 사전에 방지할 수 있는 로직을 구현할 필요 有

⇢ 중복된 ID를 CREATE 하기 전 단계에서 조회하는 작업을 진행

 

503 [Service Unavailable]

// 일시적으로 서버에 접근이 불가능할 때 사용 (서버 과부하, 점검 등)

 

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG more
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
글 보관함