티스토리 뷰

HTTP

HTTP 상태 코드

0307kjb 2022. 7. 16. 16:24

3xx(Redirection)

클라이언트가 서버에게 요청을 하는데 서버가 클라이언트에게 추가 조치를 필요하다고 재요청

리다이렉션

  • Old Location->New Location을 서버가 응답
  • 클라이언트는 자동 리다이렉트를 통해 새로운 페이지를 다시 요청함
  • 서버가 새로운 Location 응답

리다이렉션 이해

  • 영구 리다이렉션
    • 특정 리소스의 URI가 영구적으로 이동
  • 일시 리다이렉션
    • 일시적인 변경
      • 주문 완료 후 주문 내역 화면으로 이동
      • PRG : Post/Redirect/Get
  • 특수 리다이렉션
    • 결과 대신 캐시를 사용

영구 리다이렉션

  • 301, 308
  • 리소스의 URI가 영구적으로 이동
  • 원래의 URL를 사용X, 검색 엔진 등에서도 변경 인지
  • 대부분 301의 로직을 따르며 GET으로 변경되어질 수 있고 본문이 제거될 수 있다.

 

 

일시적인 리다이렉션

  • 302, 307, 303
  • 리소스의 URI가 일시적으로 변경
  • 따라서 검색 엔진 등에서 URL을 변경하면 안됨
  • 302 Found
    • 리다이렉트 시 요청 메서드가 GET으로 변하고, 본문이 제거될 수 있다
  • 307 Temporary Redirect
    • 302와 기능 같음
    • 리다이렉트시 요청 메서드와 본문 유지(요청 메서드 변경 x)
  • 303 See Other
    • 302와 기능 같음
    • 리다이렉트시 요청 메서드가 GET으로 변경

예시

PRG:POST/REDIRECT/GET

  • POST로 주문 후에 웹 브라우저를 새로고침하면?
  • 새로고침은 다시 요청!?
  • 중복 주문이 될 수 있다.

=>

  • 중복 주문 방지
  • POST 주문 후에 GET 메서드로 리다이렉트
  • 새로고침해도 결과 화면을 GET으로 조회
    • 200 OK => 302 FOUND

기타 리다이렉션

  • 304 Not Modified
    • 캐시 목적
    • 클라이언트에게 리소스가 수정되어 않았음을 알려줌
    • 따라서 클라이언트는 로컬PC에 저장된 캐시를 재사용
    • 메시지 바디 포함 X
    • 조건부 GET, HEAD

4xx(Client Error)

400 Bad Request

클라이언트가 잘못된 요청을 해서 서버가 요청을 처리할 수 없음

401 Unauthorized

클라이언트가 해당 리소스에 대한 인증이 필요함

403 Forbidden

인증 자격 증명은 있으나 인가적으로 증명이 안됨

404 Not Found

요청 리소스를 찾을 수 없음

5xx (Server Error)

고객의 잔고가 부족할 때.. 500에러를 내면 안된다.

20세 이상인데 15세가 들어와도 비지니스적으로 문제가 안된다.

500에러는 정말 서버에 문제가 있을 때 내야하는 것이다.

500 Server Internel Error

서버 오류

503 Service Unavailable

서비스 이용 불가

'HTTP' 카테고리의 다른 글

쿠키  (0) 2022.07.16
HTTP 헤더1  (0) 2022.07.16
HTTP 메서드 활용  (0) 2022.06.26
HTTP 속성  (0) 2022.06.23
HTTP 특징  (0) 2022.06.19
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함