HTTP 요청 대상을 "리소스"라고 하며 리소스의 특성은 더 이상 정의되지 않음
HTTP 전체에서 사용되는 URI(Uniform Resource Identifier)로 식별
URL
우리에게 가장 잘 알려진 URI는 URL
URL(Uniform Resource Locator)
https://developer.mozilla.org
https://developer.mozilla.org/en-US/docs/Learn/
https://developer.mozilla.org/en-US/search?q=UR
이러한 URL 중 하나를 브라우저의 주소 표시줄에 입력하여 URL과 연결되는 페이지(리소스)를 로드할 수 있도록 지시할 수 있
여러 부분으로 구성되는데, 일부는 필수 사항이고 나머지는 선택 사항
URN
URN(Uniform Resource Name)은 특정 네임스페이스에서 이름으로 리소스를 식별하는 URI
urn:isbn:9780141036144
urn:ietf:rfc:7230
URI(Uniform Resource Identifier) 구문
http:// 는 프로토콜
브라우저가 사용해야하는 프로토콜을 나타냄
일반적으로 HTTP 이거나 보안버전인 HTTPS
웹은 이 두가지 중 하나를 사용
mailto: ftp: 도 있음
스키마 | 설명 |
data | Data URL |
file | 호스트별 파일 이름 |
ftp | File Transfer Protocol |
http/https | 하이퍼 텍스트 전송 프로토콜 (보안) |
javascript | URL내 JavaScript 코드 |
mailto | 전자 메일 주소 |
ssh | 보안 쉘 |
tel | 전화 |
urn | 통합 자원 이름 |
view-source | 리소스의 소스코드 |
ws/wss | 웹 소켓 연결 (보안) |
도메인 이름
www.example.com 은 네임스페이스를 관리하는 도메인 이름 또는 기관
요청 중인 웹서버를 나타냄
IP 주소를 직접 사용하는것도 가능 ==> 하지만 편의성 떨어짐
포트
www.example.com:80/path/to/...
이경우 포는 80
웹 서버의 리소스에 액세스하는 데 사용되는 기술적인 게이트
항구
웹서버가 HTTP 프로토콜의 표준 포트 (HTTP의 경우 80 HTTPS 443)을 사용
표준 포트를 사용하지 않는다면 필수로 입력해야..
경로
www.example.com/80/path/to/myfile.html?...
노란줄은 웹 서버의 리소스 경로
옛날에는 물리적 파일 위치를 나타냈지만
요즘에는 웹 서버에서 처리를 요청하는 것에 가깝다.
쿼리
www.example.com/80/path/to/myfile.html?key1=value&key2=value2#...
노란줄은 웹 서버에 제공되는 추가 매개변수
이러한 매개변수는 & 기호로 구부된 키/값 쌍의 목록
웹서버는 이러한 매개변수를 사용하여 리소스를
사용자에게 반환하기 전에 추가적인 작업을 수행할 수 있다.
각 웹 서버에는 매개변수를 사용하는 고유한 규칙이 있으며,
특정 웹서버가 매개변수를 처리하는 방법을 알 수 있는 유일한
방법은 웹 서버 소유자에게 문의하는 것.
프레그먼트(Fragment)
www.example.com/80/path/to/myfile.html?key1=value&key2=value2#somewhereInTheDocumet
리소스 자체의 다른 부분에 대한 앵커입니다. 앵커는 리소스 내부의 일종의
"북마크"를 나타내며
브라우저에 해당 "북마크된" 지점에 있는 콘텐츠를 표시하도록 지시합니다.
예를 들어 HTML 문서에서 브라우저는 앵커가 정의된 지점으로 스크롤합니다
[Reference]
웹 리소스 식별하기
https://developer.mozilla.org/ko/docs/Web/HTTP/Basics_of_HTTP/Identifying_resources_on_the_Web
HTTP
https://developer.mozilla.org/ko/docs/Web/HTTP/Overview
https://developer.mozilla.org/ko/docs/Web/HTTP/Messages
https://www.joinc.co.kr/w/Site/Network_Programing/AdvancedComm/HTTP
'📁 𝐫𝐮𝐧𝐭𝐢𝐦𝐞𝐄𝐧𝐯𝐢𝐫𝐨𝐧𝐦𝐞𝐧𝐭 > Node.js' 카테고리의 다른 글
[Express] REST API & RESTful API (0) | 2023.02.08 |
---|---|
[Express] 기본 용어 정리 (0) | 2023.02.07 |
[Node.js] 02_Node.js란? (1) | 2023.02.03 |
[Node.js] 01_JavaScript란? (0) | 2023.02.03 |
[Node js] Node js 에 대해서 알아보자 (0) | 2023.01.10 |