본문 바로가기
Road to Developer/edwith풀스택웹개발자

2. HTTP프로토콜

by 구월에작은섬 2018. 6. 25.

HTTP 프로토콜


네트워크에서 프로토콜에 대해 알아 보았었다. 프로토콜이란 통신시스템이 데이터를 사용하기 위한 통신규칙이다.

HTTP는 서버와 클라이언트가 인터넷상에서 데이터를 주고받기 위한 프로토콜(protocol)입니다.

HTTP는 서버/클라이언트 모델을 따릅니다.


장점


- 불특정 다수를 대상으로 하는 서비스에 적합.

- 클라이언트와 서버가 계속 연결된 형태가 아니기 때문에 클라이언트와 서버 간의 최대 연결 수보다 훨씬 많은 요청과 응답을 처리할 수 있다.


단점


- 연결을 끊어버리기 때문에, 클라이언트의 이전 상황을 알 수가 없다.

- 이러한 특징을 무상태(Stateless)라고 말한다.

- 이러한 특징 때문에 정보를 유지하기 위해서 Cookie와 같은 기술이 등장하게 되었다.



URL (Uniform Resource Locator)


인터넷 상의 자원의 위치. 특정 웹 서버의 특정 파일에 접근하기 위한 경로 혹은 주소

예시) http://www.naver.com/lib/index.html


요청 메서드 : GET, PUT, POST, PUSH, OPTIONS 등의 요청 방식이 온다.

요청 URI : 요청하는 자원의 위치를 명시한다.


HTTP 프로토콜 버전 : 웹 브라우저가 사용하는 프로토콜 버전이다.

첫번째 줄의 요청 메소드는 서버에게 요청의 종류를 알려주기 위해서 사용됩니다.


각각의 메소드 이름은 다음과 같은 의미를 가집니다.

참고로 최초의 웹 서버는 GET방식만 지원해줬습니다.


GET : 정보를 요청하기 위해서 사용한다. (SELECT)

POST : 정보를 밀어넣기 위해서 사용한다. (INSERT)

PUT : 정보를 업데이트하기 위해서 사용한다. (UPDATE)

DELETE : 정보를 삭제하기 위해서 사용한다. (DELETE)

HEAD : (HTTP)헤더 정보만 요청한다. 해당 자원이 존재하는지 혹은 서버에 문제가 없는지를 확인하기 위해서 사용한다.

OPTIONS : 웹서버가 지원하는 메서드의 종류를 요청한다.

TRACE : 클라이언트의 요청을 그대로 반환한다. 예컨데 echo 서비스로 서버 상태를 확인하기 위한 목적으로 주로 사용한다.



더 생각해보기


HTTPS는 어떤 용도로 사용되나요? HTTP와 어떻게 다른가요?


HTTPS 는 HyperText Transfer Protocol Secure의 약자로 기존 HTTP는 통신하는 내용이 암호화되지 않은 평문(Plain Text, Clear Text)으로 전송되어 쉽게 노출이 가능하지만, HTTPS는 HTTP의 보안을 강화하여 암호키를 통해 데이터를 암호화 및 복호화하는 기능을 갖습니다.




http://www.edwith.org/boostcourse-web/lecture/16661/


반응형

'Road to Developer > edwith풀스택웹개발자' 카테고리의 다른 글

6. Mac OS에서 JDK설치, 환경변수 설정하기  (0) 2018.06.25
5. CSS 속성  (0) 2018.06.25
4. 웹서버, WAS  (0) 2018.06.25
3. Browser  (0) 2018.06.25
1. 웹 프로그래밍 언어  (0) 2018.06.25