에러 및 에러해결
실무 개발자 필수 HTTP 에러 코드 Top 8
개린이9999
2025. 5. 20. 15:47
728x90
✅ 실무 개발자 필수 HTTP 에러 코드 Top 8

📌 코드별 자세한 예시
🔴 400 Bad Request
: 클라이언트가 뭔가 잘못 보냄
json
{ "status": 400, "message": "email 필드는 필수입니다." }
- 예시: @RequestBody로 JSON 보냈는데 key가 없음
- 비유: 주문서에 이름도 없이 “주문합니다”라고만 씀
🔴 401 Unauthorized
: 로그인 안 했거나 토큰 없음
json
{ "status": 401, "message": "로그인이 필요합니다." }
- 예시: JWT 없이 요청
- 비유: “신분증 없이 비행기 타겠다는 사람”
*근데 Spring Security는 "요청이 인증 절차에 도달조차 못하면 → 403"을 던짐.
*401은 "너 누구냐?"고 묻는 거
🔴 403 Forbidden
: 로그인은 했지만 접근 권한이 없음
json
{ "status": 403, "message": "이 기능은 관리자만 사용할 수 있습니다." }
- 예시: 일반 사용자가 관리자 메뉴 접근
- 비유: 사원증은 있는데 회의실 출입권한 없음
*근데 Spring Security는 "요청이 인증 절차에 도달조차 못하면 → 403"을 던짐.
*403은 "너 누군진 알겠는데, 이 요청은 못 해"라고 말하는 거
🔴 404 Not Found
: 요청한 URL, 리소스가 없음
json
{ "status": 404, "message": "해당 ID의 게시글이 존재하지 않습니다." }
- 예시: /board/9999 요청했는데 그 글 없음
- 비유: 없는 가게에 배달 시도
🔴 405 Method Not Allowed
: 지원하지 않는 HTTP 메서드 요청
json
{ "status": 405, "message": "GET 방식은 지원되지 않습니다." }
- 예시: @PostMapping에 GET 요청 보냄
- 비유: “주문은 말로만 받는데 글로 써냄”
🔴 409 Conflict
: 현재 상태와 충돌
json
{ "status": 409, "message": "이미 등록된 이메일입니다." }
- 예시: 동일한 이메일로 회원가입 시도
- 비유: 중복 예약 시도
🔴 415 Unsupported Media Type
: 서버가 이해하지 못하는 Content-Type
json
{ "status": 415, "message": "지원되지 않는 형식입니다. (application/json만 허용)" }
- 예시: 서버는 JSON만 받는데 XML로 요청
- 비유: 외국어로 말했더니 못 알아들음
🔴 500 Internal Server Error
: 서버 자체 문제 (버그, 예외 등)
json
{ "status": 500, "message": "NullPointerException 발생" }
- 예시: 로직 오류, DB 연결 실패
- 비유: 주방장이 국 대신 설탕을 넣음
✅ 개발자가 반드시 기억해야 할 포인트 요약
상황 상태코드
필수 파라미터 누락, 잘못된 형식 | 400 |
로그인 안 한 사용자 | 401 |
로그인은 했는데 권한 없음 | 403 |
존재하지 않는 리소스 요청 | 404 |
요청 방식(GET/POST 등) 틀림 | 405 |
이미 존재하는 데이터 등록 | 409 |
Content-Type 잘못됨 | 415 |
코드 오류, 서버 예외 | 500 |
728x90