21.2.25

커피 내리는 그냥 사람·2021년 2월 24일
0

위코드 pre코스

목록 보기
20/28

<HTTP란?>

  1. HTTP

    HTTP는 HyperText Transfer Protocol의 약자이다

  • 즉 웹페이지를 만들기 위해 웹브라우저 위에서 동작하는 언어이자 약속.
  • 우리가 만든 대상을 웹사이트에 '전송' 하는 역할을 해주고 이를 어떻게 할지 서로 '약속'한 것이다.
    (정보를 받는 사람과 보내는 사람이 서로 지켜야하는 약속이 있는 것. 언어가 통한다.)
  1. HTTP의 두가지 특징
    약속을 했다면 그에 따른 조항이 있을 것.
  • Request / Response. 즉 요청에 대한 응답.
  • Stateless. 요청과 응답은 독립적이기 때문에 그 사이에서 상태 없음이 발생한다.
    (그 이전에 뭔 일이 있었는지 알 수 없다! 순서대로 온 명령들이 다 따로다. 관계가 없다.)

    고민 : 연관시킬 것을 연관 짓지 못할 수 있지 않을까?? -> 오히려 필요 없는 데이터끼리의 충돌을 방지할 수 있다!

    매 통신마다 자기소개를 계속 하는 과정이 있음. 근데 이건 좀...

-> 따라서 연속적인 데이터의 요청과 응답이 필요하기 때문에 만들어진 것이 토큰, 쿠키, 세션..
일종의 티켓(토큰)

  1. Request, Response 구조
  • 프:요청 / 백:응답
  • 요청과 응답 구조는 크게 3가지로 볼 수 있음

요청 : StartLine(HTTP Method, Request target, HTTP Version) - Headers(Request 방법 자체에 대한 정보) - Body(요청하는 데이터)

즉 요청을 보내는 메소드를 정하고 target을 설정해서 어떠한 정보를 담아 보낼 것인가의 과정들인 것이다.
(자세한 내용은 검색 및 노션 참고)

응답 : 응답도 위와 같은 구조지만 메소드(HTTP Version, Status Code, Status Text)가 약간 다르다.
왜 status? : 요청에 따른 응답이 어떤 ‘상태’인지 알려줘야 함.

응답은 요청에 대한 처리상태를 클라이언트에게 알려주면서 시작한다.
가장 많이 사용하는 BODY에 데이터 타입은 JSON이다

  1. HTTP Request Methods
  • GET : Data를 서버로부터 받아올 때.(물건 조회) ; "프론트가 백엔드에게 데이터 받아올 때"

  • POST : Data를 생성 / 수정할 때(물건 장바구니 담기) ; "Body에 뭘 적고 백엔드에게 뭘 요청하느냐?, 어떤 사항이 수정되었느냐?"

  • DELETE : Data 삭제할 때(장바구니 비우기)

  1. Response Status Codes
  • 숫자마다 각 의미가 있다. 이 코드에 따라 요청과 응답이 원활했는지 아닌지를 확인할 수 있다. (e.g 200)
profile
커피 내리고 향 맡는거 좋아해요. 이것 저것 공부합니다.

0개의 댓글