HTTP[2021.09.02]

김정훈·2021년 9월 6일
0

HTTP

목록 보기
1/9

1. 클라이언트-서버

번번한 데이터 업데이트가 필요한 경우, 리소스가 존재하는 곳과 리소스를 
사용하는 앱을 분리시키는 것이 유리. 이것을 2티어 아키텍처 또는 클라이언트
서버 아키텍처라고 부름
리소스를 사용하는 앱이 "클라이언트", 리소스가 제공하는곳을 "서버"라고 부름
일반적으로 리소스를 저장하는 공간을 별도로 마련 이 곳을 "데이터베이스"라고 함
기존 2티어 아키텍처에 데이터베이스가 추가된 형태를 3티어 아키텍처라고 부름

클라이언트와 서버 간의 통신규약을 프로토콜이라고 말함 
웹 애플리케이션 아키텍처에서는 클라이언트와 서버가 서로 HTTP라는 프로토콜을
이용하여 서로 대화를 나눈다.
HTTP를 이용해 주고받는 메시지는 "HTTP 메시지"라고 함
서버는 클라이언트에게 리소스를 잘 활용할 수 있도록 인터페이스를 제공해야 하며
이를 API(Application Programming Interface)라고 합니다.

HTTP 요청에는 CRUD(Create/Read/Update/Delete) 각각의 행동과 일치하는
메소드의 종류가 존재
1. GET
2. POST
3. PUT
4. DELETE
5. GET



2. 브라우저의 작동 원리

URL과 URI
URL은 네트워크 상에서 웹 페이지, 이미지, 동영상 등의 파일이 위치한 정보를 나타냄

URL은 scheme, hosts, url-path로 구분 
1. scheme 
  - 통신방식(프로토콜)을 결정
2. hosts
  - 웹 서버의 이름이나 도메인, IP를 사용하며 주소를 나타냄
3. url-path
  - 웹 서버에서 지정한 루트 디렉토리부터 시작하여 웹 페이지, 이미지, 동영상 등이
    위치한 경로왕 파일명을 나타냄
    
URI는 일반적으로 URL의 기본요소에서 query, bookmark를 포함
1. query
  - 웹 서버에 전달하는 추가 질문
  
  
IP와 포트
IP는 Internet Protocol의 줄임말로, 인터넷상에서 사용하는 주소체계를 의미
인터넷에 연결된 모든 PC는 IP 주소체계를 따라 네 덩이의 숫자로 구분하며 이를
IPv4라고 함
localhost, 127.0.0.1 : 현재 사용 중인 로컬 PC를 지칭
0.0.0.0, 255.255.255.255 : 로컬 네트워크에 접속된 모든 장치와 소통하는 주소

  
PORT
포트는 IP주소가 가리키는 PC에 접속할 수 있는 통로(채널)을 의미
포트번호는 0 ~ 65,535까지 사용할 수 있다. 그 중에서 0~1024번 까지의 포트 번호는
주요 통신을 위한 규약에 따라 이미 정해져 있다. 
22 : SSH
80 : HTTP
443 : HTTPS
.
.
.


Domain name
웹 브라우저를 통해 특정 사이트에 진입을 할 때, IP 주소를 대신하여 사용하는 주소


DNS(Domain Name System)의 줄임말로, 호스트의 도메인 이름을 IP 주소로 변환
하거나 반대의 경우를 수행할 수 있도록 개발된 데이터베이스 시스템



3. HTTP 메세지

HTTP 메세지는 클라이언트와 서버 사이에서 데이터가 교환되는 방식이며 두 가지 유형이 있다.
 - 요청(Requests)
 - 응답(Responses)
 
 요청과 응답은 유사한 구조를 가짐
 1. start line : 요청이나 응답의 상태를 나타냄. 항상 첫번째 줄에 위치
 2. HTTP headers : 요청을 지정하거나, 메시지에 포함된 본문을 설명하는 헤더의 집합
 3. empty line : 헤더와 본문을 구분하는 빈 줄
 4. body : 요청과 관련된 데이터나 응답과 관련된 데이터 또는 문서
 
 
 





    
    
profile
프론트엔드 개발자를 꿈꾸고 있습니다!

0개의 댓글