반응형
Part 2. URI , 웹 브라우저 요청의 흐름
1. URI (Uniform Resource Identifier)
1) URI, URL, URN
"URI는 위치(Locator), 이름(Name) 또는 둘 다 추가로 분류될 수 있다" 이 문구로 보았을 때 URI는 URL(Locator)과 URN(Name)을 포함하는 개념으로 볼 수 있다. URN은 이름만으로 실제 리소스를 찾을 수 있는 방법이 보편화되지 않아 잘 사용하지 않는다."
a) URL의 예시
"URL은 리소스가 있는 위치를 지정"
b) URN의 예시
"URN은 리소스에 이름을 부여
c) URI의 뜻
- Uniform: 리소스를 식별하는 통일된 방식
- Resource: 자원, URL로 식별하는 있는 모든 것
- Identifier: 다른 항복과 구분하는데 필요한 정보
d) URI 분석
scheme://[userinfo@]host[:port][/path][?query][#fragment]
- scheme: 어떤 방식으로 자원에 접근할 것인가에 대한 약속/규칙(http, https, ftp)
- userinfo: URL에 사용자 정보를 포함해 인증할 때(사용하지 않음)
- host: 호스트명(도메인명 또는 IP 주소를 직접 입력)
- port: 포트(생략 가능, 생략 시 http는 80, https는 443)
- path: 리소스 경로. 계층적 구조로 되어 있다. (/home/file1.jpg, /members)
- query: key=value 형태. ?로 시작하며 &로 추가가 가능하다(?height=180&weight=80). query parameter 또는 query string(모두 문자열 형태로 넘어가므로)으로 불림.
- fragment: html 내부 북마크 등에 사용. 잘 사용하지 않음
2. 웹 브라우저 요청 흐름
- 주소창에 URL을 입력하면
- 웹 브라우저는 port 정보와 호스트명을 DNS에 조회해 IP 주소를 알아낸다.
- HTTP 메시지를 생성한다.
- 소켓 라이브러리를 통해 TCP/IP로 HTTP 메시지를 전달한다. (TCP/IP 연결 및 데이터 전달)
- TCP/IP 계층에서 패킷을 생성하고, 전달받은 HTTP 메시지를 포함해 전송한다.
- 해당 IP 서버에서 HTTP메시지를 받아 처리하고 HTTP 응답 메시지를 생성해 웹 브라우저로 보낸다.
- 웹 브라우저는 전달받은 HTTP 응답 메시지로 HTML을 랜더링 한다.
도움)
반응형
'개발자 공부 업무 정보 > HTTP,FRONT' 카테고리의 다른 글
trim() (0) | 2022.12.30 |
---|---|
HTTP 웹 기본 지식 - 1편 IP, TCP, UDP, PORT, DNS (0) | 2022.09.21 |
<c:url value 쓰는 이유 / jsessionId (0) | 2019.01.18 |
[javascript] 웹 브라우저의 현재 URL 가져오기 (0) | 2019.01.17 |
DOM 객체에 동적으로 이벤트 핸들러 추가하는 방법 (0) | 2019.01.15 |