TIL 220805

HaByungNo·2022년 8월 5일
0

Today I Learned

목록 보기
8/16
post-thumbnail

Done 😁



Learned 👌

http

  • HTML(웹문서를 만들기 위한 언어) 문서를 주고 받는데 쓰이는 통신프로토콜(통신규약) 쉽게 말해, “나는 이렇게 줄 테니 넌 이렇게 받고 난 너가 준거 그렇게 받을께” 정도가 될듯

  • HTTP 프로토콜은 데이터를 주고 받기 위한 각각의 데이터 요청이 서로 독립적으로 관리가 되는 상태가 없는(stateless) 프로토콜, 즉 이전 데이터 요청과 다음 데이터 요청이 서로 관련이 없다는 뜻

  • HTTP 프로토콜로 데이터를 주고받기 위해서는 아래와 같이 요청(Request)을 보내고 응답(Response)을 받아야 한다.

  • http 요청 메서드 (Http Request Methods)

    • GET : 존재하는 자원에 대한 요청
    • POST : 새로운 자원을 생성 (PUT, DELETE의 동작도 수행 가능)
    • PUT : 존재하는 자원에 대한 변경
    • DELETE : 존재하는 자원에 대한 삭제

  • HTTP 상태 코드 (HTTP Status Code)
    서버에서 설정해주는 응답(Response) 정보
    • 2xx - 200번대의 상태 코드는 대부분 성공을 의미
      • 200 : GET 요청에 대한 성공
      • 204 : No Content. 성공했으나 응답 본문에 데이터가 없음
      • 205 : Reset Content. 성공했으나 클라이언트의 화면을 새로 고침하도록 권고
      • 206 : Partial Conent. 성공했으나 일부 범위의 데이터만 반환
    • 3xx - 리다이렉션, 300번대의 상태 코드는 대부분 클라이언트가 이전 주소로 데이터를 요청하여 서버에서 새 URL로 리다이렉트를 유도하는 경우
      • 301 : Moved Permanently, 요청한 자원이 새 URL에 존재
      • 303 : See Other, 요청한 자원이 임시 주소에 존재
      • 304 : Not Modified, 요청한 자원이 변경되지 않았으므로 클라이언트에서 캐싱된 자원을 사용하도록 권고. ETag와 같은 정보를 활용하여 변경 여부를 확인
    • 4xx - 클라이언트 에러, 400번대 상태 코드는 대부분 클라이언트의 코드가 잘못된 경우이다. 유효하지 않은 자원을 요청했거나 요청이나 권한이 잘못된 경우 발생한다. 가장 익숙한 상태 코드는 404 코드이다. 요청한 자원이 서버에 없다는 의미
      • 400 : Bad Request, 잘못된 요청
      • 401 : Unauthorized, 권한 없이 요청. Authorization 헤더가 잘못된 경우
      • 403 : Forbidden, 서버에서 해당 자원에 대해 접근 금지
      • 405 : Method Not Allowed, 허용되지 않은 요청 메서드
      • 409 : Conflict, 최신 자원이 아닌데 업데이트하는 경우. ex) 파일 업로드 시 버전 충돌
    • 5xx - 서버 에러, 500번대 상태 코드는 서버 쪽에서 오류가 난 경우
      • 501 : Not Implemented, 요청한 동작에 대해 서버가 수행할 수 없는 경우
      • 503 : Service Unavailable, 서버가 과부하 또는 유지 보수로 내려간 경우

다시 살펴보는 HTTP 요청과 응답





레퍼런스 :
https://joshua1988.github.io/web-development/http-part1/

profile
프라고

0개의 댓글