HTTP 상태 코드
그 번호의 뜻, 그리고 언제 보낼지.
- 코드
- 38
출력
1xx informational — the request was received and work continues
2xx success — it worked
3xx redirection — look somewhere else
4xx the request is wrong — the client can usually fix it
5xx the server is wrong — the client can only retry
100 Continue
Carry on sending the body; the headers were acceptable.
101 Switching Protocols
Agreed — usually the handshake into a WebSocket.
200 OK
It worked, and the body is the answer.
201 Created
It worked and something new exists; Location says where.
202 Accepted
Taken in, not done yet. Nothing promises it will succeed.
204 No Content
It worked and there is deliberately nothing to send back.
206 Partial Content
Here is the range you asked for — how video seeking works.
301 Moved Permanently
Use the new address from now on; search engines move their index.
302 Found
Temporarily elsewhere. Keep using this address.
303 See Other
Done — now GET that other address. The answer to a form POST.
304 Not Modified
Your copy is current; nothing is sent. The point of caching.
307 Temporary Redirect
Like 302 but the method must not change.
308 Permanent Redirect
Like 301 but the method must not change.
400 Bad Request
The request itself is malformed. Not the same as invalid data.
401 Unauthorized
Not authenticated. Misnamed: it means “who are you?”.
402 Payment Required
Reserved for years, now used by some APIs for quota and billing.
403 Forbidden
Authenticated and still not allowed. “I know who you are; no.”
404 Not Found
Nothing here, and nothing said about whether there ever was.
405 Method Not Allowed
The address exists; that verb does not work on it.
406 Not Acceptable
Nothing can be produced that matches the Accept header.
408 Request Timeout
The client took too long to send it.
409 Conflict
It clashes with the current state — an edit against a stale version.
410 Gone
It was here and is deliberately gone. Stronger than 404.
413 Payload Too Large
The body is bigger than the server will take.
415 Unsupported Media Type
The Content-Type is not one this endpoint reads.
418 I'm a teapot
A 1998 April Fools joke, in the standard, still implemented for fun.
422 Unprocessable Content
Well formed, but the data fails validation. The one people want when they reach for 400.
425 Too Early
Refusing a replayable request sent in TLS early data.
428 Precondition Required
Send an If-Match so you do not overwrite somebody blindly.
429 Too Many Requests
Rate limited. Retry-After says how long to wait.
431 Request Header Fields Too Large
Usually one enormous cookie.
451 Unavailable For Legal Reasons
Blocked by law. The number is a Fahrenheit 451 joke.
500 Internal Server Error
Something threw. The catch-all, and a sign nothing more specific was chosen.
501 Not Implemented
The server does not support that method at all.
502 Bad Gateway
A proxy got nonsense from upstream. Usually the app behind it is down.
503 Service Unavailable
Temporarily down or overloaded; Retry-After may say when.
504 Gateway Timeout
A proxy waited for upstream and gave up.
507 Insufficient Storage
No room to hold what was sent.파일은 내 기기 밖으로 나가지 않습니다
이 도구는 브라우저 안에서만 작동합니다. 붙여넣은 내용은 기기에서 처리되고 서버로 전송되지 않으므로 토큰, 키, 공개 전 문서도 안심하고 사용할 수 있습니다.
사용 방법
- 비워 두면 분류별 전체 목록이 나옵니다.
- 번호를 넣으면 해당 코드 하나가 나옵니다.
- 4xx를 넣으면 그 분류 전체가 나옵니다.
- cache, redirect 같은 단어로도 찾을 수 있습니다.
자주 묻는 질문
- 401과 403은 어떻게 다른가요?
- 401은 “당신이 누구인지 모르겠다”——인증하고 다시 시도하라는 뜻입니다. 403은 “누구인지는 알겠고, 그래도 안 된다”는 뜻입니다. 401의 이름이 Unauthorized(인가되지 않음)인데 의미는 미인증이라, 끊임없이 반대로 쓰입니다.
- 400과 422 중 무엇을 써야 하나요?
- 400은 요청 자체가 망가졌을 때——JSON이 깨졌거나 헤더가 빠졌을 때입니다. 422는 구문은 읽혔는데 내용이 검증을 통과하지 못했을 때입니다. 많은 사람이 400을 꺼내는 상황은 사실 422입니다.
- 418은 뭔가요?
- 1998년 만우절 농담이지만 실제 RFC에 실려 있고 구현도 되어 있으며, 삭제 제안이 주기적으로 올라왔다 사라집니다. 뜻은 “나는 찻주전자다”입니다.
- 리다이렉트는 어느 것을 써야 하나요?
- 영구 이전이고 검색엔진 색인도 옮기고 싶다면 301, 일시적이면 302입니다. POST가 GET으로 바뀌면 곤란한 경우에는 308과 307을 씁니다. 이 둘은 그 이유 하나로 존재합니다.
- 서버로 전송되나요?
- 아니요. 브라우저 안에서만 동작하므로 입력한 내용은 컴퓨터를 벗어나지 않습니다.