HTTP 상태코드는 크게 100, 200, 300, 400, 500 번대로 나눌 수 있다.
여기서는 주로 많이 사용되는 HTTP 상태 코드에 대해서 간단하게 알아보도록 하겠다.
100(Informational)
요청이 수신되어 처리중 실제로는 거의 사용하지 않으므로 이런게 있다는 것 정도만 알고있으면 된다.
200(OK)
성공적으로 수신하고 요청을 처리했다는 뜻.
- 200(OK): 성공적으로 처리했을 때 쓰이는 가장 일반적인코드
- 201(Created): 성공적으로 처리되어 리소스가 생성되었음
- 202(Accepted): 요청이 받아들여졌지만 처리되지는 않았음
- 204(No Content): 성공적으로 처리했지만 응답에 데이터가 없음
300(Redirection)
요청을 완료하기 위해 리다이렉션이 이루어져야함.
Redirection이란? 웹 브라우저에서 HTTP 응답에 있는 Location 위치로 자동으로 이동하는 것
- 301, 308(Moved Permanently): 영구적으로 컨텐츠가 이동되었을 때 사용
- 302,307,303(Temporary Redirect): 일시적으로 리다이렉트를 해야할 때 사용.
400(Client Error)
클라이언트의 요청에 잘못된 것이 있어 요청을 처리할 수 없음. 클라이언트의 요청이 올바르지 않다는 의미.
- 400(Bad Request): 요청 자체가 잘못되어서 처리할 수 없음
- 401(Unauthorized): 인증이 필요한 리소스에 인증없이 접근하였음
- 403(Forbidden): 서버가 요청을 이해했지만 승인이 거부됨
- 404(Not Found): 요청된 리소스를 찾을 수 없음
500(Server Error)
서버에서 문제가 생겨서 응답할 수 없다는 의미.
- 500(Internal Server Error): 서버에서 내부적으로 오류가 발생하였을 경우
- 503(Service Temporarily Unavailable): 주로 서버의 과부하 등으로 일시적으로 서비스를 사용할 수 없을 경우