HTTP 응답

정태경·2022년 1월 15일
0

200 OK

요청이 성공적으로 되었습니다. 성공의 의미는 HTTP 메소드에 따라 달라짐.

GET: 리소스를 불러와서 메시지 바디에 전송되었음.
HEAD: 개체 해더가 메시지 바디에 있음.
PUT 또는 POST: 수행 결과에 대한 리소스가 메시지 바디에 전송되었음.
TRACE: 메시지 바디는 서버에서 수신한 요청 메시지를 포함하고 있음

201 Created

요청이 성공적이었으며 그 결과로 새로운 리소스가 생성됨.
이 응답은 일반적으로 POST 요청 또는 일부 PUT 요청 이후에 따라옴.
생성된 리소스는 응답의 Location 헤더 필드로 식별됨.

202 Accepted

요청을 수신하였지만 처리가 완료되지 않았음.

204 No Content

요청을 수신했지만 응답 페이로드 본문에 보낼 데이터가 없음.
예를 들어, 문서 편집기에서 SAVE 버튼 클릭 시 서버는 값을 저장하지만 저장된 값을 보내줄 필요가 없음.

301 Moved Permanently (영구 리다이렉트)

리소스의 URI가 영구적으로 이동됨.
원래의 URI를 더 이상 사용하지 않을 경우에 활용하며, 검색 엔진 등에서도 변경을 인지함.
요청 메서드가 GET으로 변하고, 브라우저에 따라 본문이 제거될 수 있음.

308 Permanent Redirect (en-US) (영구 리다이렉트)

301과 기능은 같으나 리다이렉트 요청 시 요청 메서드와 본문을 유지함.
처음 요청에 POST를 보내면 리다이렉트 시 POST를 보내고 본문도 유지함.

302 Found (일시적 리다이렉트)

이 응답 코드는 요청한 리소스의 URI가 일시적으로 변경되었음을 의미함.
요청 메서드가 GET으로 변하고, 브라우저에 따라 본문이 제거될 수 있음.

307 Temporary Redirect (일시적 리다이렉트)

302와 기능은 같으나 리다이렉트 요청 시 요청 메서드와 본문을 유지함.

303 See Other (en-US) (일시적 리다이렉트)

302와 기능은 같으나 리다이렉트 요청 시 메서드가 GET으로 변경됨.

일시적인 리다이렉션 시 보통 PRG 프로세스를 활용 함.

304 Not Modified

캐시를 목적으로 사용함. 클라이언트에게 리소스가 수정되지 않았음을 알려주며, 그로인해 클라이언트는 로컬에 저장된 캐시를 재사용함.
304 응답은 로컬 캐시를 사용해야하므로 본문을 포함하면 안됨.

400 Bad Request

잘못된 문법으로 인해 서버가 요청을 이해할 수 없어 처리하지 못함.
요청 구문, 메시지 등의 요류가 많으며 클라이언트는 요청 내용을 다시 검토하고 보내야함.
주로 파라미터가 잘못되거나 API 스펙이 맞지 않을 때 발생됨.

401 Unauthorized (비인증)

클라이언트가 요청한 리소스에 대해 인증이 필요함.
즉, 인증되지 않은 리소스에 접근할 때 보내는 응답.
401 오류 발생 시 응답에 WWW-Authenticate 헤더와 함께 인증 방법을 설명.
Authentication : 본인이 누구인지 (로그인)
Authorization : 권한 (누구인지 확인되었으나 Admin 권한처럼 권한이 필요한 경우)

403 Forbidden (권한)

인증 자격은 증명되었으나, 접근 권한이 불충분함.
누구인지 확인되었으나 Admin 권한처럼 권한이 필요한 경우

404 Not Found

클라이언트가 요청한 리소스를 찾을 수 없음.
또는 특정 리소스를 숨기기 위해 해당 에러를 응답하기도 함.

profile
現 두나무 업비트 QA 엔지니어, 前 마이리얼트립 TQA 엔지니어

0개의 댓글