-
항해 4주차 HTTP 웹 리소스 식별하기카테고리 없음 2023. 2. 8. 21:38
리소스는 문서, 사진 등으로 그 어떤 것이든 될 수 있다.
각 리소스는 리소스 식별을 위해 HTTP 전체에서 사용되는
URI(Uniform Resource Identifier)로 식별된다.
URL(Uniform Resource Identifier) ?
URL중 하나를 브라우저의 주소 표시줄에 입력하여 URL과 연결하는 페이지(리소스)를
로드할 수 있도록 지시할 수 있다.
URN(Uniform Resource Name) ?
특정 네임스페이스에서 이름으로 리소스를 식별하는 URI다.
urn:isbn:9780141036144 urn:ietf:rfc:7230
URI(Uniform Resource Identifier)구문
- 스키마 또는 프로토콜
http://는 프로토콜로, 브라우저가 사용해야 하는 프로토콜을 나타낸다.
일반적으로 프로토콜은 HTTP이거나 보안 버전인 HTTPS 다.
- 도메인 이름
www.example.com은 네임스페이스를 관리하는 도메인 이름 또는 기관이며 요청 중인 웹 서버를 나타낸다.
대신 IP 주소를 직접 사용하는 것도 가능하지만, 편의성이 떨어지므로 웹에서는 자주 사용되지 않는다.
- 포트
이 경우 포트는 :80이다.
포트는 웹 서버의 리소스에 액세스하는 데 사용되는 기술적인 "게이트"를 나타낸다.
웹 서버가 HTTP 프로토콜의 표준 포트(HTTP의 경우 80, HTTPS의 경우 443)를 사용하여 리소스에 접근하는 경우엔
일반적으로 포트가 생략된다. 표준 포트를 사용하지 않는다면 필수로 입력해주어야 한다.
- 경로
/path/to/myfile.html은 웹 서버의 리소스 경로다.
초기 웹에서는 이와 같은 경로가 웹 서버의 물리적 파일 위치를 나타냈다.
하지만 요즘에는 물리적 파일을 나타내는것이 아닌 웹 서버에서 처리를 요청하는것에 가깝다.
- 쿼리
?key1=value1&key2=value2는 웹 서버에 제공되는 추가 매개변수다.
이러한 매개변수는 & 기호로 구분된 키/값 쌍의 목록이다.
웹 서버는 이러한 매개변수를 사용하여 리소스를 사용자에게 반환하기 전에 추가적인 작업을 수행할 수 있다.
각 웹 서버에는 매개변수를 사용하는 고유한 규칙이 있으며 특정 웹 서버가 매개변수를 처리하는 방법을 알 수 있는 유일한 방법은 웹 서버 소유자에게 문의하는 것이다.
- 프레그먼트(Fragment)
#SomewhereInTheDocument는 리소스 자체의 다른 부분에 대한 앵커이다.
앵커는 리소스 내부의 일종의 "북마크"를 나타내며 브라우저에 해당 "북마크된" 지점에 있는 콘텐츠를 표시하도록 지시한다. 예를 들어 HTML 문서에서 브라우저는 앵커가 정의된 지점으로 스크롤한다. 비디오 또는 오디오 문서에서 브라우저는 앵커가 나타내는 시간으로 이동하려고 시도한다. 프래그먼트 식별자라고도 하는 # 뒤의 부분은 요청과 함께 서버로 전송되지 않는다.