상태 코드: 작동했는가?
모든 응답은 세 자리 상태 코드와 함께 돌아온다 — 요청이 어떻게 됐는지에 대한 서버의 한눈 판정이다. 첫 자리 숫자로 묶인다:
- 2xx — 성공. 작동했다.
200 OK는 "여기 네가 요청한 게 있어"라는 일상적인 응답이다. - 3xx — 리다이렉트. "여긴 없어, 대신 저쪽을 봐." 흔하고 해롭지 않다; 브라우저가 자동으로 따라간다.
- 4xx — 당신(클라이언트)이 실수했다. 유명한 것은 404 Not Found — 존재하지 않는 path를 요청했다. (
401/403도 있다 — 로그인하지 않았거나, 허락되지 않았다.) - 5xx — 서버가 실수했다. 500 Internal Server Error는 요청을 처리하던 중 서버 자신의 코드가 충돌하거나 깨졌다는 뜻이다.
4xx/5xx의 구분은 머리에 새겨둘 가치가 있다. 어디를 봐야 할지를 알려주기 때문이다:
- 404는 요청이 잘못됐다는 뜻이다 — 보통 잘못된 URL이나 오타 난 path. 무엇이 요청되고 있는지를 봐라.
- 500은 서버가 쓰러졌다는 뜻이다. 당신의 요청은 멀쩡했다; 백엔드 코드가 깨졌다. URL이 아니라 서버 로그를 봐라.
바이브 코딩으로 만든 앱에서 뭔가 깨졌을 때, "이게 4xx야 5xx야?"는 분류에 쓸 수 있는 가장 빠른 질문 중 하나다.