URI (Uniform Resource Identifier)
"URI는 로케이터(locator), 이름(name) 또는 둘 다 추가로 분류될 수 있다."
URI 단어 뜻
- Uniform : 리소스 식별하는 통일된 방식
- Resource : 자원, URI로 식별할 수 있는 모든 것 (제한 없음)
- Identifier : 다른 항목과 구분하는데 필요한 정보
URL, URN 단어 뜻
- URL - Locator : 리소스가 있는 위치를 지정
- URN - Name : 리소스에 이름을 부여
- 위치는 변할 수 있지만, 이름은 변하지 않는다.
- URN의 예시로 어떤 책의 isbn이 있다.
- URN 이름만으로 실제 리소스를 찾을 수 있는 방법이 보편화 되지 않았다.
- URI가 URL과 URN을 포함하고 있기 때문에 URI를 URL로 말해도 무방하다.
URL 문법
- 프로토콜 : https
- 호스트명 : www.google.com
- 포트번호 : 443
- path : /search
- 쿼리 파라미터 : q=hello&hl=ko
웹 브라우저 요청 흐름
https://www.google.com/search?q=hello&hl=ko
해당 주소로 요청을 보냈을 때, 웹브라우저는 DNS를 조회한다. IP : 200.200.200.2
HTTPS는 PORT를 생략하기 때문에 443 포트라고 생각하면 된다.
그리고 HTTP 요청 메시지를 생성한다.
HTTP 메시지를 전송하는 과정은 아래와 같다.
축약해서 말하자면, 서버로 전송되는 패킷은 출발지 IP, PORT + 목적지 IP, PORT + 전송 데이터 ... 를 포함하고 있다.
여기서 전송 데이터는 웹 브라우저가 만든 HTTP 요청 메시지다!
웹 브라우저가 보낸 패킷을 서버가 받아서 HTTP 메시지를 확인한다. 그리고 요청에 대한 HTTP 응답 메시지를 만든다.
HTTP 버전, 데이터 형식, 언어, HTML 데이터의 길이, HTML 코드를 응답 메시지로 보낸다.
웹 브라우저는 서버가 보낸 HTML 데이터를 렌더링해서 결과를 보여주게 된다.
* 인프런 모든 개발자를 위한 HTTP 웹 기본 지식(김영한) 강의를 듣고 정리한 내용입니다.
'Spring > HTTP 강의' 카테고리의 다른 글
[HTTP] 인터넷 네트워크 (0) | 2021.10.11 |
---|