주로 HTML 문서를 주고받는데 사용하며 주로 TCP/IP통신에서 동작하고 HTTP/3부터는 UDP를 사용, 기본 80번 포트를 사용한다.
1. start line :3 부분으로 구성
- HTTP Method: 해당 request가 의도한 action을 정의 (GET, POST, PUT, DELETE, OPTIONS)
- Request target: 해당 request가 전송되는 target URI
- HTTP Version (ex: 1.0, 1.1, 2.0, ...)
2. Headers: request에 대한 추가 정보를 담고 있는 부분
- Key:Value
의 값으로 되어있다 (HOST:google.com
<- key: HOST, value: google.com)
- 자주 사용되는 header 정보: Host, User-Agent, Accept, Connection, Content-Type, Content-Length)
- 3 부분으로 구성 (general headers, request headers, entity headers)
: URI(URL)가 가진 정보를 검색하기 위함
```
GET [request-uri]?query_string
Host:[Hostname] 혹은 [IP]\r\n
EX) www.example-url.com/resources?name1=value1&name2=value2
```
: resource를 생성/변경하기 위함
: 데이터를 생성하기 위함
:특정 데이터를 서버에서
-PUT처럼 POST에 밀려썰~
-참고-
https://velog.io/@sdc337dc/%EC%9B%B9-%EA%B0%9C%EB%85%90-Http-%ED%86%B5%EC%8B%A0
https://hongsii.github.io/2017/08/02/what-is-the-difference-get-and-post/
https://velog.io/@teddybearjung/HTTP-%EA%B5%AC%EC%A1%B0-%EB%B0%8F-%ED%95%B5%EC%8B%AC-%EC%9A%94%EC%86%8C