
HTTP - 상태코드개발/http2024. 4. 13. 10:45
Table of Contents
2xx 성공(Success)
2xx 상태 코드는 요청이 성공적으로 처리되었음을 의미한다.
- 200 OK: 요청이 성공적으로 처리되었음을 나타낸다. 클라이언트가 요청한 리소스를 성공적으로 전달하거나, 요청을 처리한 결과를 반환할 때 사용된다.
- 201 Created: 요청이 성공적으로 처리되었으며, 새로운 리소스가 생성되었음을 의미한다. 주로 POST 요청 이후에 사용된다.
- 204 No Content: 요청이 성공적으로 처리되었지만, 반환할 데이터가 없음을 의미한다. 주로 리소스를 삭제하거나 수정하는 요청에 사용된다.
3xx 리다이렉션(Redirection)
3xx 상태 코드는 클라이언트가 요청한 리소스가 다른 위치로 이동되었음을 의미하며, 클라이언트가 새로운 위치로 요청을 다시 해야 한다.
- 301 Moved Permanently: 요청한 리소스가 영구적으로 새로운 URL로 이동되었음을 의미한다. 클라이언트는 앞으로도 이 새로운 URL을 사용해야 하며, GET 요청으로 변경된다.
- 308 Permanent Redirect: 301과 유사하지만, 클라이언트가 요청한 메서드를 유지한다. 즉, POST 요청이면 POST로, PUT이면 PUT으로 새로운 URL에 요청한다.
- 302 Found: 요청한 리소스가 일시적으로 다른 URL에 위치해 있으며, 클라이언트는 GET 요청으로 다시 시도해야 한다. 이는 주로 리소스의 임시 변경이나 리다이렉션 시 사용된다.
- 307 Temporary Redirect: 302와 유사하지만, 클라이언트가 원래의 요청 메서드를 유지한다. POST 요청이 리다이렉션될 경우, 새 URL에서도 POST로 요청이 이루어진다.
- 303 See Other: 서버가 요청을 처리했지만, 클라이언트가 GET 요청을 통해 다른 URL에서 결과를 확인해야 한다. PRG(Post-Redirect-Get) 패턴에서 자주 사용된다.
4xx 클라이언트 오류(Client Error)
4xx 상태 코드는 클라이언트의 잘못된 요청으로 인해 오류가 발생했음을 나타낸다. 클라이언트가 요청을 수정하지 않으면 성공할 수 없다.
- 400 Bad Request: 요청이 잘못되어 서버가 처리할 수 없음을 의미한다. 주로 요청 파라미터나 헤더가 잘못된 경우에 발생한다.
- 401 Unauthorized: 클라이언트가 인증되지 않았음을 나타낸다. 적절한 인증 자격 증명이 필요하다.
- 403 Forbidden: 클라이언트가 요청을 할 권한이 없음을 의미한다. 서버는 요청을 이해했지만, 클라이언트에게 리소스에 접근할 권한이 없다.
- 404 Not Found: 요청한 리소스를 서버에서 찾을 수 없음을 의미한다. 클라이언트가 잘못된 URL을 요청했거나, 리소스가 존재하지 않는 경우에 발생한다.
5xx 서버 오류(Server Error)
5xx 상태 코드는 서버의 내부 오류로 인해 요청을 처리할 수 없음을 의미한다. 서버의 문제로 인해 요청이 실패할 수 있으며, 재시도할 경우 성공할 수도 있다.
- 500 Internal Server Error: 서버 내부에서 예기치 못한 오류가 발생했음을 나타낸다. 구체적인 원인을 알 수 없을 때 사용된다.
- 503 Service Unavailable: 서버가 일시적으로 과부하 상태이거나 유지보수 중이어서 요청을 처리할 수 없음을 의미한다. 재시도하면 요청이 성공할 수 있다.
'개발 > http' 카테고리의 다른 글
HTTP- 쿠키 (0) | 2024.04.23 |
---|---|
HTTP- http 헤더 (0) | 2024.04.13 |
HTTP - HTML form이란? (0) | 2024.04.13 |

@바이솔 :: Byesol의 기록