임시 응답으로 현재 클라이언트의 요청까지는 처리되었으니 계속 진행하라는 의미이다. HTTP 1.1 버전부터 추가되었다.
클라이언트는 요청 헤더에 ‘Expect: 100-continue’를 보내고 서버는 이를 처리할 수 있으면 이 코드로 응답합니다.
서버가 처리하는 데 오랜 시간이 예상되어 클라이언트에서 타임 아웃이 발생하지 않도록 이 응답 코드를 보냅니다.
클라이언트의 요청이 서버에서 성공적으로 처리되었다는 의미.
응답 헤더 Location에 새로운 리소스의 절대 URI를 기록합니다.
응답 헤더의 Location, Retry-After를 참고하여 클라이언트는 다시 요청을 보냅니다.
응답에는 헤더만 있고 바디는 없습니다. DELETE 요청에 대한 응답에 많이 사용된다.
완전한 처리를 위해서 추가 동작이 필요한 경우.
주로 서버의 주소 또는 요청한 URI의 웹 문서가 이동되었으니 그 주소로 다시 시도하라는 의미.
요청한 URI가 없으므로 클라이언트 메소드를 그대로 유지한 채 응답 헤더 Location에 표시된 다른 URI로 요청을 재송신할 필요가 있다. 302의 의미를 정확하게 개선해서 307을 정의하였으므로 이 응답 코드의 사용은 권장하지 않는다.
If-Modified-Since와 같은 조건부 GET 요청일 때 지정한 리소스가 갱신되지 않았음을 알려준다. 이 응답 코드에는 바디가 없다.
없는 페이지를 요청하는 등 클라이언트의 요청 메시지 내용이 잘못된 경우를 의미.
클라이언트가 모르는 4xx 계열 응답 코드가 반환된 경우에도 클라이언트는 400과 동일하게 처리하도록 규정하고 있다.
응답 헤더 WWW-Authenticate에 필요한 인증 방식을 지정한다.
401 인증 처리 이외의 사유로 리소스에 대한 액세스가 금지되었음을 의미한다. 리소스의 존재 자체를 은폐하고 싶은 경우는 404 응답 코드를 사용할 수 있다.
응답 헤더 Allow에 이 URI가 지원하는 메소드 목록을 기록한다.
요청의 속도를 제한할 때 사용한다. 응답에 Retry-After 헤더를 보내 얼마나 기다릴지를 알려 줄 수 있다.
서버 사정으로 메시지 처리에 문제가 발생한 경우.
서버의 부하, DB 처리 과정 오류, 서버에서 익셉션이 발생하는 경우를 의미.
클라이언트가 모르는 5xx 계열의 응답 코드가 반환된 경우에도 클라이언트는 500과 동일하게 처리하도록 규정하고 있다.