본문 바로가기

문과 코린이의, [WEB] 기록/문과 코린이의, [HTTP] 기록

[문과 코린이의 IT 기록장] HTTP - URI와 웹 브라우저 요청 흐름 (URI, 웹 브라우저 요청 흐름)

반응형

[문과 코린이의 IT 기록장] HTTP - URI와 웹 브라우저 요청 흐름 (URI, 웹 브라우저 요청 흐름)

 


 

 

모든 개발자를 위한 HTTP 웹 기본 지식 - 인프런 | 강의

실무에 꼭 필요한 HTTP 핵심 기능과 올바른 HTTP API 설계 방법을 학습합니다., - 강의 소개 | 인프런...

www.inflearn.com

2022.05.24 - [문과 코린이의, [WEB] 기록/문과 코린이의, [HTTP] 기록] - [문과 코린이의 IT 기록장] HTTP - 인터넷 네트워크 (인터넷 통신, IP, TCP/UDP, PORT, DNS)

 

[문과 코린이의 IT 기록장] HTTP - 인터넷 네트워크 (인터넷 통신, IP, TCP/UDP, PORT, DNS)

[문과 코린이의 IT 기록장] HTTP - 인터넷 네트워크 (인터넷 통신, IP, TCP/UDP, PORT, DNS) 모든 개발자를 위한 HTTP 웹 기본 지식 - 인프런 | 강의 실무에 꼭 필요한 HTTP 핵심 기능과 올바른 HTT..

vansoft1215.tistory.com


1. URI

1) URI(Uniform Resource Identifier) : 리소스를 식별하는 통합된 방법

 * Uniform : 리소스를 식별하는 통일된 방식

 * Resource : 자원, URI로 식별할 수 있는 모든 것을 의미함. ex. 파일 , 실시간 교통정보 등

 * Identifier : 다른 항목과 구분하는데 필요한 정보

a. URL(Uniform Resource Locator) : 리소스의 위치정보

b. URN(Uniform Resource Name) : 리소스의 이름정보

 * URN 이름만으로 실제 리소스를 찾을 수 있는 방법은, 아직 보편화되지 않음.

=> 리소스의 위치는 변할 수 있지만, 이름은 변하지 않는다.

=> 통상적으로 URI를 URL과 같은 의미로 이해해도 괜찬다.

 


2) URL 전체 문법 

- 구문

scheme://[userinfo@]host[:port][/path][?query][#fragment]

- 예시

https://www.google.com:443/search?q=hello&hl=ko

 

a. scheme 

- 주로 프로토콜 정보가 들어간다.

ex. https, http, ftp 등 

 

b. userinfo

- URL에 사용자 정보를 포함해서 인증하는 것으로, 실제로는 거의 사용되지 않는다.

 

c. host

- 도메인명 또는 IP주소를 직접 입력하여 사용한다.

 

d. PORT 

- 일반적으로 생략된다.

ex. http는 80포트, https는 443포트

 

e. Path

- 리소스 경로로, 계층적 구조로 이루어진다.

ex. /home/file1.jpg , /members , /members.100

 

f. query

- key=value의 형태로 이루어지며, ?로 시작하여 &로 추가할 수 있다.

ex. KeyA = valueA & KeyB = valueB

- 이는 웹서버에 제공하는 파라미터 형태라는 뜻으로 query parameter라고 불리기도 하며, 숫자의 형태로 기입해도 모두 문자형태로 넘어간다는 점에서 qurey string이라고 불리기도 한다.

 

g. fragment

- html 내부 북마크 등에 사용되며, 서버에 전송하는 정보는 아니다.

ex. #getting-started-introducing-spring-boot

 


2. 웹 브라우저 요청 흐름

1. 웹 브라우저가 URL 중, DNS부분을 조회해 IP로 변환시킨다.

2. 웹 브라우저가 HTTP요청 메시지를 생성한다,

3. Socket 라이브러리를 통해 데이터를 전달한다. 이 과정에서 IP와 PORT정보를 가지고 데이터를 전달한다.

4. 즉, TCP/IP패킷을 생성하여, 내부에 HTTP 메시지를 포함시킨다.

5. 이후 인터넷 망으로 해당 패킷을 던져, 수많은 노드를 거쳐 의도한 서버로 도착시킨다.

6. 도착한 패킷은 TCP/IP 패킷을 모두 까버린 후, HTTP 메시지만 가지고 해석을 시도한다.

 


 

[ HTTP 요청 메시지 패킷 형태 ]

[ HTTP 응답 메시지 형태 ]


[ 패킷 전송 및 웹 브라우저 html 확인 과정 ]

 


* 유의사항
- 아직 공부하고 있는 문과생 코린이가, 정리해서 남겨놓은 정리 및 필기노트입니다.
- 정확하지 않거나, 틀린 점이 있을 수 있으니, 유의해서 봐주시면 감사하겠습니다.
- 혹시 잘못된 점을 발견하셨다면, 댓글로 친절하게 남겨주시면 감사하겠습니다 :)
반응형