본문 바로가기

웹 개발

HTTP를 알고 계신가요?

시작 전

혼자 공부해야 할 시기가 오면서 웹 개발 기본 지식에 관한 게 너무 부족하다고 느꼈다

공부하면서 바로 바로 기록을 하기는 하는데 막상 다른 걸 하고 있다 보면 자주 보게 되진 않는다

그래도 자주 들어오게 되는 블로그에 기록을 하려 한다

 

그래서 HTTP가 뭡니까?

HyperText Transfer Protocol

HTTP는 HTML 문서와 같은 리소스들을 가져올 수 있도록 해주는 프로토콜입니다  - Mozilla

여기서 프로토콜은 규칙을 의미하고 지금까지 이 HTTP 규칙에 맞춰 웹 개발이 이루어 졌다

HTTP는 서로 정보를 교환할 수 있다

최근에는 HTML 문서 전송뿐 만이 아니라 XML, JSON 등 다양한 형태의 정보를 전송하는 프로토콜이다

 

HTTP 통신

클라이언트와 서버

클라이언트?

서버에게 요청을 보내는 사용자이다 예를 들어 대표적으로 웹 브라우저가 있고 요즘은 어플리케이션(휴대폰) 같은 것들이 있다

 

서버?

클라이언트의 요청에 따라 응답하여 리소스를 제공하는 관리자

클라이언트가 URL방식을 통해 서버에 요청을 하면 그 요청을 서버가 응답하는 방식으로 작동하게 된다

 

URL?

사람들은 URL이 정확히 어떠한 뜻 인지는 잘 모르나 인터넷을 사용하는 모두가 한번 이상은 꼭 사용하는 것이다

보통 "야 링크 보내줘!"라고 많이들 하는 그 URL 주소! 

우리는 그것을 통해 HTTP 통신을 하며 클라이언트에서 요청하고 서버에서 응답을 하여 우리 눈에 보이게 된다

HTTP의 요청 메소드

그럼 서버에 요청을 할 때는 클라이언트가 어떠한 방식으로 요청을 하게 되는가를 보면

크게 네 가지가 요청 방식이 존재하는데

GET : 존재하는 자원, 자료에 대한 요청
POST : 새로운 자원, 자료를 생성 또는 변경
PUT : 존재하는 자원을 생성
DELETE : 자원을 삭제

이해하기 쉽게 설명을 해보자면

GET 요청 방식은 무엇인가를 조회의 목적으로만 사용할 때 보통 많이 사용한다 예를 들어 검색

POST는 게시판 같은 것을 조회하고 수정할 때 사용, 또 다른 예로는 장바구니나 좋아요 기능이 될 수 도 있겠다

사실 이 두 가지로 밑에 있는 PUT과 DELETE를 대체하여 사용할 수 있기에 가장 많이 사용하는 것은 GET과 POST라고 생각하면 된다

 

마지막 요약

- HTTP는 HTML, JSON과 같은 문서의 리소스를 주고받기 위하여 정해놓은 프로토콜(규약)이다

- HTTP는 클라이언트와 서버 간의 요청과 응답을 주고받는 방식이며 그 방식은 URL을 통해 이루어진다

- HTTP를 동작하는 대표적인 네 가지 방식은 GET, POST, PUT, DELETE가 있고 많이 사용하는 것은 GET, POST 두 가지이다

 

웹 개발 지식은 배울 것도 많고 익숙해지지 않으면 금방 휘발되어 기억에 잘 남지 않는다

블로그, 노션 등 기록을 해놓고 자주 읽는 습관을 길러야 할 것이다

 

[참고]

http://www.codns.com/b/B05-195 URL 이미지 출처

https://developer.mozilla.org/ko/docs/Web/HTTP MDN 원글

https://joshua1988.github.io/web-development/http-part1/ 원글