[HTTP] HTTP 기초 개념

OFFDUTYBYBLO·2020년 6월 11일
0

Session

목록 보기
1/5
  1. HTTP
  • Hyper Text Transfer Protocol
  • 하이퍼텍스트 문서를 교환하기 위해 만들어진 protocol(통신 규약)
  • 웹상에서 네트워크로 서버끼리 통신을 할때 어떠한 형식으로 서로 통신을 하자고 규정해 놓은 통신 구조라고 보면 된다.
  • 프론트와 백, 프론트 서버와 클라이언트간의 통신
  • HTTP는 TCP/IP 기반
  1. HTTP 통신 방식
  • 기본적으로 요청/응답(request/response) 구조
  • 요청이 오면 그에 응답을 할 뿐, 여러 요청/응답끼리 연결되어있지 않다.
  • 클라이언트가 요청을 보내고 응답을 받은 후, 조금 있다 다시 요청을 보낼 때, 전에 보낸 요청/응답이 저장되지 않음
  1. HTTP Request 메세지는 3부분으로 구성
    • status line
      request의 첫 라인(method,request target, HTTP Version으로 구성)
    • headers
      해당 request에 대한 추가 정보를 담고 있는 부분
      • host : 요청이 전송되는 타겟의 host url:
      • User-Agent : 요청을 보내는 클라이언트의 대한 정보: 예를들어 웹브라우저에 대한 정보.
      • Accept : 해당 요청이 받을 수 있는 응답 타입
      • Connection : 해당 요청이 끝난 후에 클라이언트와 서버가 계속해서 네트워크 커넥션을 유지할 것인지 아니면 끊을 것인지에 대해 지시하는 부분
      • Content-Type : 해당 요청이 보내는 메세지 바디의 타입, 예를 들어 JSON을 보내면 application/json
      • Content-Length : 메세지 body의 길이

    • body
      해당 request의 실제 메시지/내용
      • 바디가 없는 request도 많다.
  2. HTTP Response 구조
  • Response도 Request와 마찬가지로 크게 3부분으로 구성
    - Status line
    - Response의 상태를 간략하게 나타내주는 부분
    - HTTP 버젼, Status code(응답 상태를 나타내는 숫자로 되어 있는 코드), Status text(응답 상태를 간략하게 설명해주는 부분)
    • Headers
      • Response의 headers와 동일하다.
        • 다만 response에서만 사용되는 header 값들이 있다.
    • Body
      • Response와 body와 일반적으로 동일
        • Request와 마찬가지로 모든 response가 body가 있지는 않다. 데이터를 전송할 필요가 없을경우 body가 비어있게 된다.
  1. 자주 쓰이는 HTTP Methods
    • GET
      - 이름 그대로 어떠한 데이터를 서버로부터 받아올때 주로 사용하는 메서드
      • 데이터 생성/수정/삭제 없이 받아오기만 할때 사용
      • 가장 간단하고 많이 사용되는 HTTP Method
      • 언급한대로 주로 데이터를 받아올때 사용되기 때문에 request에 body를 안 보내는 경우가 많다.
    • POST
      - 데이터를 생성/수정.삭제 할 때 주로 사용되는 메서드
      • 데이터를 생성 및 수정할 때 많이 사용하기 때문에 대부분의 경우 request body가 포함되서 보내진다.
  
profile
블로그 운영 x

0개의 댓글