반응형
250x250
Notice
Recent Posts
Recent Comments
Link
관리 메뉴

짧은코딩

URI 본문

URI(Uniform Resource Identifier)

URIURLURN을 포함하는 큰 개념이며 리소스(자원)을 식별한다. 예를 들면 사람의 주민등록번호 처럼 식별하는 것이다.

URL과 URN

URL: 리소스의 위치, 사람으로치면 현재 있는 위치, URN: 리소스의 이름, 사람으로치면 그 사람의 이름

URN으로는 거의 찾을 수 없어서 사실상 URL만 사용한다고 보면된다. 즉, URI를 URL과 같은 의미로 봐도 된다.

URL 문법

URL은 "scheme://[userinfo@]host[:port][/path][?query][#fragment]" 이런 구조를 가지고 있다. 예시로 "https://www.google.com:443/search?q=hello&hl=ko" 이렇게 사용한다.

sheme

"https://www.google.com:443/search?q=hello&hl=ko"에서 https를 의미한다.

sheme에서는 주로 프로토콜을 사용한다. http(80 포트), https(443 포트), ftp 등이 있고 포트는 생략이 가능하다.

userinfo

URL에 사용자 정보를 포함하여 인증하는 것이다. 거의 사용하지 않는다.

host

"https://www.google.com:443/search?q=hello&hl=ko"에서 www.google.com를 의미한다.

도메인명 혹은 IP 주소를 직접 사용할 수 있다.

port

"https://www.google.com:443/search?q=hello&hl=ko"에서 443를 의미한다.

특정 서버에 따로 접근할 때 입력하고 일반적인 웹 브라우저에서는 생략을 많이 한다. 

path

"https://www.google.com:443/search?q=hello&hl=ko"에서 search를 의미한다.

리소스의 경로를 의미하고 계층적 구조이다.

 

-예시

/home/file1.jpg: 이런 디텍토리 구조로 이루어질 수 있다.

/members: 회원들의 정보를 보여주는 사이트일 수 있다.

/members/100, /items/iphone12: members, items가 정보가 있는 디렉토리라 하면 안에 100번 id를 가진 회원이 존재한다.

query

"https://www.google.com:443/search?q=hello&hl=ko"에서 ?q=hello&hl=ko를 의미한다.

"key=value"의 형태이며 "?"로 시작하고 "&"로 추가한다. query parameter, query string 등으로 불리며, 웹 서버에 제공하는 파라미터이다.

fragment

fragment도 잘 사용하지 않는다. "https://docs.spring.io/spring-boot/docs/current/reference/html/getting-started.html#getting-started-introducing-spring-boot"에서 #getting-started-introducing-spring-boot를 의미한다.

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

728x90
반응형

'인프런, 유데미 > 모든 개발자를 위한 HTTP 웹 기본 지식' 카테고리의 다른 글

HTTP 상태 코드  (0) 2023.03.20
HTTP API  (1) 2023.03.14
HTTP 구조와 Stateless  (0) 2023.03.06
웹 브라우저 요청 흐름  (0) 2023.02.05
IP, TCP와 UDP,PORT, DNS  (0) 2023.02.04
Comments