URL과 URI

이일우·2023년 3월 29일

공부하기

목록 보기
24/42

URL과 URI

URL

URL은 Uniform Resource Locator의 약자로, 인터넷에서 특정 리소스의 위치를 나타냅니다. URL은 리소스의 위치를 나타내는 스키마(scheme), 호스트명(host name), 포트 번호(port number), 경로(path) 등으로 구성됩니다.

  • 스키마(Scheme): URI를 처리하기 위해 사용되는 프로토콜(예: http, ftp, mailto)을 나타냅니다.

  • 호스트(Host): 리소스가 위치한 인터넷 호스트의 이름이나 IP 주소를 나타냅니다.

  • 경로(Path): 리소스의 경로를 나타냅니다. 경로는 슬래시(/)로 구분된 문자열입니다.

  • 포트(Port): 리소스에 접근하기 위해 사용되는 포트 번호를 나타냅니다. 포트 번호는 스키마에 따라 기본값이 있습니다.

경로(Path): 리소스의 경로를 나타냅니다. 경로는 슬래시(/)로 구분된 문자열입니다.
ex) https://velog.io/@atory

  • 스키마(scheme): https
  • 호스트명(host name): velog.io
  • 경로(path): @atory
  • 포트 번호(port number): http(https) 기본 포트 번호(http:80, https:443)는 URL에서 생략됩니다.

URI

URI는 URL을 포함하는 개념으로 URL의 구성 요소에 쿼리(query)와 프레그먼트(fragment)를 추가 할 수 있습니다. 또한 보안상의 이유로 잘 사용하지 않지만 인증 정보도 포함 시킬 수 있습니다.

  • 인증 정보(Authority): URI의 인증 정보는 사용자 이름과 비밀번호, 그리고 호스트명과 포트 번호를 포함합니다. 예를 들어, "user:password@example.com:8080"과 같이 사용됩니다.

  • 쿼리(Query): URI에 전달되는 매개변수와 값의 쌍을 나타냅니다. 쿼리 문자열은 물음표(?)로 시작하며, 각 매개변수는 & 문자로 구분됩니다.

  • 프래그먼트(Fragment): 리소스 내의 특정 위치를 나타냅니다. 프래그먼트는 샵(#) 문자로 시작하며, 리소스의 특정 부분을 가리킵니다.

ex 1) https://www.youtube.com/results?search_query=rest+api
위의 코드에서 ?를 시작으로 쿼리가 시작되고 search_query=rest+api가 전달된다.

ex2) https://www.rfc-editor.org/rfc/rfc7231#section-4.2.2
위의 코드에서 #으로 시작해서 리소스에서 section-4.2.2를 가리킨다.

마치며

URI는 URL을 포함한다.

0개의 댓글