에러 및 에러해결

실무 개발자 필수 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