HTTP
HTTP(Hypertext Transfer Protocol)란?
- 서버와 클라이언트가 인터넷 상에서 데이터를 주고 받기 위한 프로토콜(Protocol)
- 이미지, 텍스트, 오디오, 동영상 등 종류를 가리지 않고 전송이 가능함
- 현재 가장 최신 버전은 HTTP/2 버전
인터넷: TCP/IP 기반의 네트워크가 전 세계적으로 확대되어 하나로 연결된 네트워크들의 결합체
Protocol
- 규약을 의미
- 클라이언트와 서버는 미리 정해놓은 규칙을 가지고 통신을 해야한다.
작동 방식
HTTP는 서버/클라이언트 모델을 따른다.
- 장점
- 불특정 다수를 대상으로 하는 서비스에 적합
- 클라이언트와 서버가 계속 연결된 형태가 아니기에 클라이언트와 서버간의 최대 연결 수보다 훨씬 많은 요청과 응답을 처리할 수 있다.
- 단점
- 연결을 끊어버리기 대문에, 클라이언트의 이전 상황을 알 수 없다.
- 이러한 특징을 무상태(Stateless)라 함
- 이 때문에 정보를 유지하기 위한 Cookie와 같은 기술이 등장함
- 연결을 끊어버리기 대문에, 클라이언트의 이전 상황을 알 수 없다.
- 클라이언트가 서버에 접속한다.
- 클라이언트가 서버한테 요청한다.
- 서버는 클라이언트의 요청사항에 따른 응답 결과를 클라이언트한테 준다.
- 응답이 끝나면 서버와 클라이언트의 연결이 끊어진다.
URL(Uniform Resouce Locator)
- 인터넷 상의 자원의 위치
- 특정 웹 서버의 특정 파일에 접근하기 위한 경로 혹은 주소
- 하나의 물리적 컴퓨터에는 여러 개의 소프트웨어 서버가 동작이 가능함
- 이 서버는 포트 값이 다르게 동작해야 한다.
- http 서버는 기본 포트 값이 80이다.
http://127.0.0.1/cono/src/project/Intro.html
접근 프로토콜://IP주소 또는 도메인 명/문서 경로/문서 이름
Request Data Format
- 시작 줄
- 요청 메서드: 요청 방식
- 요청 URI: 요청하는 자원의 위치 명시
- HTTP 프로토콜의 버전
- Request Header
- 대소문자 구분없는 문자열 다음에 콜론 ':'이 붙는다.
- 그 뒤에 오는 값은 이 헤더에 따라 달라진다.
- Request Body
- GET 방식은 요청 바디가 없다.
- 이 방식은 요청할 때 가지고 가야 할 자원들은 URI에 붙는다.
- GET 방식은 요청 바디가 없다.
Response Data Format
- 시작 줄
- HTTP 프로토콜의 버전
- 응답 코드, 응답 메시지
- Response Header
- 날짜
- 웹 서버 이름과 버전
- 컨텐츠 타입
- 캐시 제어 방식, 컨텐츠 길이 등
- Response Body
- 실제 응답 리소스 데이터
'WebStudy' 카테고리의 다른 글
Web Server 및 WAS (0) | 2021.02.06 |
---|---|
Browser (0) | 2021.02.06 |
프로젝트A. 명함 관리 프로그램 (0) | 2021.02.05 |
JDBC (0) | 2021.02.05 |
Maven (0) | 2021.02.04 |
최근댓글