웹을 공부하면서 HTTP에 대한 개념을 정리한 적이 없었네요.
정리해보는 포스팅입니다.
HTTP(Hyper Text Transfer Protocol)
: 인터넷에서 데이터를 주고받는데 사용되는 프로토콜(규약, 규격)
데이터를 주고받을 때 사용하는 규약, 혹은 규칙을 말합니다.
여기서 데이터를 주고받는다는 것은 아래와 같이 클라이언트, 서버간의 정보교환을 말합니다.
클라이언트 ---------- 요청(Request) -----------> 서버
클라이언트 <-------- 응답(Response) ----------- 서버
간단히 제 개인 프로젝트에서 개발자 도구를 확인해볼까요.
저도 아직 대부분의 헤더를 몰라서,, 각 헤더에 대해 공부가 필요할 듯 합니다.
[요청(Request)]
1번째 줄: GET 방식으로 /boards에 요청을 보냄. HTTP 1.1버전
[응답(Response)]
1번째 줄: 상태코드 200(성공: 서버가 요청을 제대로 처리함)
2번째 줄: 응답내용의 타입
5번째 줄: 코드가 찍힌 시간(자동 생성)
말을 좀 더 보태고 싶었는데, 공부가 더 필요할 듯 하네요.
추후에 각각의 헤더에 대한 공부를 한 후 포스팅하겠습니다.
---------------------------------------------------------------------------------------------------------------------
그렇다면 HTTP의 특징을 알아보겠습니다.
1. 비연결성(Connectionless)
연결을 유지하지 않을채 응답과 요청을 처리합니다.
즉, 요청에 맞게 응답을 한 후 연결을 끊습니다.
채팅프로그램, 게임 같은 경우 데이터의 연결을 유지한 채 프로그램이 계속되는데,
이걸 생각하면 비교가 잘 될 것 같습니다.
2. 무상태성(Stateless)
1.에 의해서 HTTP는 이전의 상태정보나 현재 통신의 상태가 남아있지 않습니다.
요청에 답하는 동시에 연결을 끊고 통신을 종료하기 때문입니다.
위 특징으로 인한
장점은 쓸데없는 자원의 낭비를 줄일 수 있다는 점이고,
단점은, 클라이언트의 상태를 유지시켜줄 수 없다는 점입니다.
여튼 따라서,,
쿠키와 세션이 없다면 로그인이 필요한 매 페이지마다 계속 로그인을 해야 합니다.
HTTP의 특징은 쿠키, 세션의 개념과 연결되기 때문에 잘 알아두는 것이 좋을 것 같습니다.
'Dev- > WEB' 카테고리의 다른 글
HTTP, HTTPS의 차이 (0) | 2018.08.09 |
---|---|
Web Server(웹 서버), Web Application Server(WAS)의 차이 (0) | 2018.08.09 |
쿠키와 세션 (0) | 2018.08.07 |
Tomcat war 파일 배포 (0) | 2018.08.06 |
RSA 공개키 암호화 기법 (0) | 2018.07.19 |