[CS] HTTP란?

mean_g·2022년 7월 2일
0

[ CS ]

목록 보기
5/8

1. HTTP란?

  • HTTP의 HT는, Hyper Text의 약자로 HTML(HyperText Markup Language), 문서와 문서가 링크로 연결되어 있음을 뜻한다.
    T는 Transfer, Html로 만든 웹페이지 문서(파일)을 보낸다.
    P는 Protocol, 컴퓨터끼리 어떻게 HTML 파일을 주고받을지에 대한 소통 방식 또는 약속이다.

2. HTTP란?

1) Request / Response

  • 요청(request) 하나당, 하나의 응답(response)으로 이루어진다.

2) Stateless

  • HTTP 개별 통신은 모두 독립이어서, 과거의 HTTP 통신의 결과(상태)를 보존하지 않는다.
그래서 이런 결과가 나온다.

+) 번거로운 측면이 있어서 토큰(Token) 방식을 이용하기도 한다.

3. HTTP 메시지 구조

1) Request 메시지 구조

  • Start Line
    - 요청의 첫 번째 줄으로 HTTP method(요청이 의도한 액션을 정의), Request target(요청이 전송되는 목표 url), HTTP version이 있다.
    ex) POST /users/login HTTP/1.1

  • Headers
    - 요청의 메타데이터를 담고 있는 부분이다. {key:value}형태로 이루어져 있다.
    ex)

Headers:{
	Host : www.wecode.co.kr
	User-Agent : chrome
	Content-Type : application/json
	Content-Length : 50
	}
  • Body
    - 요청의 실제 내용 부분으로, 요청 메서드에 따라 존재하지 않을 수 있다.
    ex)
Body:{
	"username" : "wecode",
	"password" : "wecode123"`
	}

2) Response 메시지 구조

  • Status Line
    - 응답의 첫 번째 줄로 상태를 나타낸다. HTTP version, Status Code(응답 상태 코드), Status Text(응답의 상태를 간략히 설명하는 텍스트)가 있다.
    ex) HTTP/1.1 404 Not Found, HTTP/1.1 200 SUCCESS

  • Headers
    - 응답의 메타데이터를 담고 있는 부분이다. {key:value}형태로 이루어져 있다.
    ex)

Headers:{
	Host : www.wecode.co.kr
    User-Agent : chrome
    Content-Type : application/json
    Content-Length : 50
    }
  • Body
    - 응답해 줄 데이터로, 요청 메서드에 따라 존재하지 않을 수 있다.
    ex)
Body:{
	"message" : "success",
    "token" : "qfsaldjiowj"
    }



4. HTTP Request Methods

1) GET

  • 데이터를 받아오기만 할 때 사용하며, 웹페이지에 접속해서 필요한 데이터를 불러올 때 사용한다.

2) POST

  • 데이터를 생성 / 수정할 때 사용하며, body에 담는 내용이 핵심이다.

3) DELETE

  • 서버에 저장된 특정 데이터를 삭제할 때 사용한다.


+)다양한 Status code코드들이 있다... 크게 이렇게 볼 수 있지 않을까..?

profile
Backend Dev

0개의 댓글