Http Response

mkhome·2021년 4월 1일
0

네트워크

목록 보기
1/2

Response Code

  • 사실 가장 기본이라고도 생각하지만 갑자기 삘이 받기도 했고 항상 비전공자이기에 기본기가 부족하다 생각은 했지만 귀찮아서 하지 않던 일을 이제야 시작한다.

종류

  • Response Code는 크게 5개로 나눌 수 있다. 100번~ 500번대로 구분지을 수 있다.

  • 일하면서 사실 100번은 크게 만날 일이 없었다. 가장 많이 확인하는 코드는 아무래도 200, 400, 그리고 서버에러인 500

1. 100

  • 100번은 임시적인 응답으로 지금까지 상태가 괜찮으며 클라이언트가 계속해서 요청을 하거나 이미 요청을 완료한 경우에는 무시해도 되는 것
    101 Switching Protocol: 클라이언트가 보낸 요청 헤더에 대한 응답에 들어가며 서버에서 프로토콜을 변경할 것임을 알려준다.
    102 Processing : 서버가 요청을 수신하였으며 처리하고 있지만 아직 제대로 된 응답을 알려줄 수 없음
    100번대는 결국 무언가 요청에 대한 응답으로 상태가 종료되지 않고 임시적인 상태임을 나타냄

2. 200 - 가장 많이 보는 것

  • 200 OK : 요청이 성공적으로 되었음, 성공의 의미는 HTTP Method에 따라 달라진다.

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

    201 Created : 요청이 성공적이었음, 그 결과로 새로운 리소스가 생성되었음, 보통 POST, 일부 PUT 요청 이후에 따라옴
    202 Accepted : 요청을 수신하였지만 그에 응해 행동할 수 는 없다. 이 응답은 요청 처리에 대한 결과를 이후에 HTTP로 비동기 응답을 보내는 것에 대해서 명확하게 명시하지 않습니다. 이것은 다른 프로세스에서 처리 또는 서버가 요청을 다루고 있거나 배치 프로세스를 하고 있는 경우를 위해 만들어졌습니다.

3. 300

  • 요청에 대해 하나 이상의 응답이 가능, 사용자나 에이전트는 그 중 하나를 반드시 선택해야한다.
    301 Moved Permanently
    이 응답 코드는 요청한 리소스의 URI가 변경되었음을 의미합니다. 새로운 URI가 응답에서 아마도 주어질 수 있습니다. -- 종종 확인함

4. 400 - Bad Request

  • 400 Bad Request
    이 응답은 잘못된 문법으로 인하여 서버가 요청을 이해할 수 없음을 의미합니다.
    -401 Unauthorized (403과 차이. 401은 누구인지도 모름)
    비록 HTTP 표준에서는 "미승인(unauthorized)"를 명확히 하고 있지만, 의미상 이 응답은 "비인증(unauthenticated)"을 의미합니다. 클라이언트는 요청한 응답을 받기 위해서는 반드시 스스로를 인증해야 합니다.
    -402 Payment Required
    이 응답 코드는 나중에 사용될 것을 대비해 예약되었습니다. 첫 목표로는 디지털 결제 시스템에 사용하기 위하여 만들어졌지만 지금 사용되고 있지는 않습니다.
    -403 Forbidden (401과 달리 누군지는 안다)
    클라이언트는 콘텐츠에 접근할 권리를 가지고 있지 않습니다. 예를들어 그들은 미승인이어서 서버는 거절을 위한 적절한 응답을 보냅니다. 401과 다른 점은 서버가 클라이언트가 누구인지 알고 있습니다.
    -404 Not Found // Url 잘못됨!!
    서버는 요청받은 리소스를 찾을 수 없습니다. 브라우저에서는 알려지지 않은 URL을 의미합니다. 이것은 API에서 종점은 적절하지만 리소스 자체는 존재하지 않음을 의미할 수도 있습니다. 서버들은 인증받지 않은 클라이언트로부터 리소스를 숨기기 위하여 이 응답을 403 대신에 전송할 수도 있습니다. 이 응답 코드는 웹에서 반복적으로 발생하기 때문에 가장 유명할지도 모릅니다.
    -405 Method Not Allowed
    요청한 메소드는 서버에서 알고 있지만, 제거되었고 사용할 수 없습니다. 예를 들어, 어떤 API에서 리소스를 삭제하는 것을 금지할 수 있습니다. 필수적인 메소드인 GET과 HEAD는 제거될 수 없으며 이 에러 코드를 리턴할 수 없습니다.

5. 500 - Internal Server Error

  • 501 Not Implemented
    요청 방법은 서버에서 지원되지 않으므로 처리할 수 없습니다. 서버가 지원해야 하는 유일한 방법은 GET와 HEAD이다. 이 코드는 반환하면 안됩니다.
  • 502 Bad Gateway
    이 오류 응답은 서버가 요청을 처리하는 데 필요한 응답을 얻기 위해 게이트웨이로 작업하는 동안 잘못된 응답을 수신했음을 의미합니다.
  • 503 Service Unavailable
    서버가 요청을 처리할 준비가 되지 않았습니다. 일반적인 원인은 유지보수를 위해 작동이 중단되거나 과부하가 걸렸을 때 입니다. 이 응답과 함께 문제를 설명하는 사용자 친화적인 페이지가 전송되어야 한다는 점에 유의하십시오. 이 응답은 임시 조건에 사용되어야 하며, Retry-After: HTTP 헤더는 가능하면 서비스를 복구하기 전 예상 시간을 포함해야 합니다. 웹마스터는 또한 이러한 일시적인 조건 응답을 캐시하지 않아야 하므로 이 응답과 함께 전송되는 캐싱 관련 헤더에 대해서도 주의해야 합니다.
  • 504 Gateway Timeout
    이 오류 응답은 서버가 게이트웨이 역할을 하고 있으며 적시에 응답을 받을 수 없을 때 주어집니다.

0개의 댓글

관련 채용 정보