URI: Единый идентификатор ресурса с пояснениями

Понятие URL знакомо большинству людей. URL — это веб-адрес, который используется для направления пользователей на веб-сайты в Интернете. Но что такое URI? Концепция URI была придумана прародителем Всемирной паутины Тимом Бернерсом-Ли. Когда он впервые использовал этот термин в RFC 1630, он еще говорил об универсальном идентификаторе ресурса. Однако с тех пор, благодаря, в частности, публикациям Консорциума Всемирной паутины (W3C), URI утвердился как аббревиатура для Унифицированного идентификатора ресурса, и по сей день используется именно он. Однако в отношении первоначальной идеи ничего не изменилось.

Что такое Единый идентификатор ресурса (URI)?

Унифицированный идентификатор ресурса (URI) предназначен для идентификации абстрактных или физических ресурсов в Интернете. То, чем должны быть эти ресурсы, может варьироваться в зависимости от ситуации. Например, это может быть веб-сайт. Однако отправители и получатели электронной почты также могут быть идентифицированы с помощью URI. Приложения используют однозначное обозначение для идентификации ресурса или для запроса данных с него.

Такие протоколы, как HTTP или FTP, могут функционировать на этой основе, поскольку форма идентификации предопределена синтаксисом URI. Из этого URI система может узнать, где и как должна быть идентифицирована определенная информация.

Синтаксис URI

URI состоит максимум из пяти частей. Однако только две из них являются обязательными.

  • схема: Дает информацию об используемом протоколе.
  • полномочия: Идентифицирует домены.
  • путь: Показывает точный путь к ресурсу.
  • запрос: Представляет собой действие запроса.
  • фрагмент: Относится к частичному аспекту ресурса.

В каждом идентификаторе должны присутствовать только схема и путь. В синтаксисе URI все компоненты перечисляются последовательно и разделяются определенными, заранее заданными символами.

scheme :// authority path ? query # fragment

Двойная прямая косая черта после первого двоеточия необходима только в том случае, если заполнена авторитетная часть. Кроме того, авторитет может содержать информацию о пользователе, которая затем отделяется от домена символом @, и, наконец, еще одно обозначение порта, которое, в свою очередь, отделяется от домена двоеточием.

Типичный веб-адрес является хорошим примером: «https://example.org/test/test1?search=test-question#part2»

  • схема: https
  • авторитет: example.org
  • путь: test/test1
  • запрос: search=test-question
  • фрагмент: часть2

В примере URI относится к одной части веб-сайта. Доступ к этой части (part2) осуществляется по протоколу HTTP; она находится на устройстве с идентификатором example.org и может быть найдена по указанному пути, если предварительно выполнить поиск. С помощью унифицированного идентификатора ресурса можно также определить адрес электронной почты: «mailto:user@example.org».

  • схема: mailto
  • путь: user@example.org

В этом случае в URI содержатся не только обязательные компоненты. С помощью этого синтаксиса можно идентифицировать и другие потенциальные ресурсы, например, файлы или даже телефонные номера.

Примечание

Несмотря на то, что путь является обязательной спецификацией в каждом URI, содержимое части может быть пустым. Другими словами, «http://example.org/» — это правильный URI с пустым путем.

Схемы URI, другими словами, первая часть каждого URI, управляются IANA. Хотя можно использовать и собственные схемы, те, которые были подтверждены организацией, известны во всем Интернете. Наиболее известными являются следующие схемы:

  • примерно: Информация о браузере
  • данные: Встроенные данные
  • фид: Веб-каналы
  • файл: Файлы
  • ftp: Протокол передачи файлов
  • git: Управление версиями с помощью Git
  • http: Протокол передачи гипертекста
  • https:Безопасный протокол передачи гипертекста
  • imap: Протокол доступа к интернет-сообщениям
  • mailto: адреса электронной почты
  • news: Группы новостей Usenet
  • pop: POP3
  • rsync: Синхронизация данных
  • sftp: Протокол передачи файлов SSH
  • ssh: Защищенная оболочка
  • tel: Телефонные номера
  • urn: Унифицированные имена ресурсов
Совет

IANA публикует официальный список всех известных схем URI.

Ссылка на URI

Чтобы не писать (и не сохранять) полную спецификацию URI, многие приложения используют сокращенную версию синтаксиса. Чтобы сокращенная версия была правильно понята, всегда должен существовать базовый URI, который полностью сформулирован. Затем ссылки URI разрешаются внутри. По этой причине различают абсолютные и относительные ссылки. Абсолютный URI функционирует независимо от контекста и состоит как минимум из схемы, авторитета и пути. Относительная ссылка имеет фактическую краткую форму. В этой форме указывается только отклонение от базового URI. По этой причине относительный URI всегда должен располагаться в том же пространстве имен, что и базовый URI.

При относительной ссылке схема не указывается. Чтобы можно было отличить относительные URI от абсолютных URI, в первом сегменте пути не должно быть двоеточия, поскольку часть перед двоеточием будет интерпретироваться как схема. Среди относительных ссылок различают три разных типа, которые каждый раз распознаются по маркеру в начале пути:

  • Ссылка на относительный путь начинается без прямой косой черты.
  • Абсолютная ссылка на путь начинается с прямой косой черты.
  • Ссылка на сетевой путь начинается с двух прямых косых черт.

URI vs. URL vs. URN

Существует много путаницы относительно очень похожих по звучанию аббревиатур URI, URL и URN. Неопределенность обусловлена тем, что все три понятия в техническом плане также связаны друг с другом. Унифицированный локатор ресурса используется для отображения местоположения ресурса. По этой причине URL также используется при серфинге в Интернете для перехода на конкретные веб-сайты. В отличие от этого, унифицированное имя ресурса не зависит от местоположения и постоянно обозначает ресурс. Таким образом, если URL известны в основном в виде веб-адресов, то URN, например, может также использоваться в качестве ISBN для постоянной идентификации книги.

URL и URN следуют синтаксису URI. По этой причине оба типа обозначений являются подмножествами URI. Таким образом, URL и URN всегда являются URI. И наоборот, унифицированные идентификаторы ресурсов не являются ни URL, ни URN.

Оцените статью
cdelat.ru
Добавить комментарий