В чем разница между URI, URL и URN? [дубликат]


этот вопрос уже есть ответ здесь:

  • В чем разница между URI, URL и URN? 31 ответы

в чем разница между URI, URL и URN? Я прочитал много сайтов (даже Wikipedia), но я не понимаю этого.

URI:http://www.foo.com/bar.html
URL-АДРЕС: http://www.foo.com/bar.html
Урн: бар.HTML-код

это правильно?

4 205

4 ответа:

Единый Идентификатор Ресурса (URI) - это строка символов, используемая для идентификации имени или ресурса в Интернете

URI определяет ресурс либо по местоположению, либо по имени, либо по обоим. URI имеет две специализации, известные как URL и URN.

Единый Локатор Ресурсов (URL) - это подмножество единого идентификатора ресурса (URI), указывающее, где доступен идентифицированный ресурс и механизм его получения. URL-АДРЕС определяет способ получения ресурса. Это не обязательно должен быть HTTP URL (http://), URL также может быть (ftp://) или (smb://).

Единое Имя Ресурса (URN) является единым идентификатором ресурса (URI), который использует схему URN, и не означает наличие идентифицированного ресурса. Оба URNs (имена) и URL (локаторы) являются URI, и конкретный URI может быть как именем, так и локатором одновременно.

урны являются частью большего Интернета информационная архитектура, которая состоит из урн, URCs и URL-адресов.

бар.html - это не урна. Урна похожа на имя человека, а URL-адрес-на адрес улицы. Урна определяет что-то идентичное, в то время как URL-адрес предоставляет местоположение. По сути," что "против"где". Урна должна быть такой формы <URN> ::= "urn:" <NID> ":" <NSS> здесь <NID> - это идентификатор пространства имен, и <NSS> - это строка, специфичная для пространства имен.

поставить его иначе:

  • URL-это URI, который идентифицирует ресурс, а также предоставляет средства поиска ресурса, описывая способ доступа к нему
  • URL-это URI
  • URI не обязательно является URL

Я бы сказал, что единственное, что осталось, чтобы сделать его на 100% ясным, - это иметь пример URI, который не является URL. Мы можем использовать примеры в RFC3986:

URL: ftp://ftp.is.co.za/rfc/rfc1808.txt
URL: http://www.ietf.org/rfc/rfc2396.txt
URL: ldap://[2001:db8::7]/c=GB?objectClass?one
URL: mailto:John.Doe@example.com
URL: news:comp.infosystems.www.servers.unix
URL: telnet://192.0.2.16:80/
URN (not URL): urn:oasis:names:specification:docbook:dtd:xml:4.1.2
URN (not URL): tel:+1-816-555-1212 (?)

также проверьте это - https://quintupledev.wordpress.com/2016/02/29/difference-between-uri-url-and-urn/

ниже я суммирую Prateek Джоши объяснение.

теория:

  • URI (uniform resource identifier) определяет ресурс (текстовый документ, файл изображения и т. д.)
  • URL (uniform resource locator) - это подмножество URI, которые включают сетевое расположение
  • URN (uniform resource name) - это подмножество URI, которые включают имя в заданном пространстве, но не местоположение

Что это:

enter image description here

и для примера:

enter image description here

кроме того, если вы еще не сделали, я предлагаю читать ответ Роджера Пэйта.

URL -- Единый Локатор Ресурсов

содержит информацию о том, как извлечь ресурс от его местоположения. Например:

  • http://example.com/mypage.html
  • ftp://example.com/download.zip
  • mailto:user@example.com
  • file:///home/user/file.txt
  • http://example.com/resource?foo=bar#fragment
  • /other/link.html (относительный URL, полезен только в контексте другого URL)

URL-адреса всегда начинаются с указания протокола (http) и обычно содержат такие сведения, как имя сетевого хоста (example.com) и часто путь документа (/foo/mypage.html). URL-адреса могут иметь параметры запроса и идентификатор фрагмента.

урна -- Унифицированное Имя Ресурса

определяет ресурс по имени. Он всегда начинается с префикса urn: например:

  • urn:isbn:0451450523 чтобы идентифицировать книгу по ее номеру ISBN.
  • urn:uuid:6e8bc430-9c3a-11d9-9669-0800200c9a66 глобально уникальный идентификатор
  • urn:publishing:book - XML пространство имен, определяющее документ как тип книги.

урны могут идентифицировать идеи и концепции. Они не ограничиваются документами, удостоверяющими личность. Когда URN действительно представляет документ, он может быть переведен в URL-адрес "решателем". Затем документ можно загрузить с URL-адреса.

URI--Единый Идентификатор Ресурса

URIs включает в себя как URL-адреса, урны, так и другие способы указания a ресурс.

пример URI, который не является ни URL, ни URN, будет данные URI например data:,Hello%20World. Это не URL или URN, потому что URI содержит данные. Он не называет его, и не говорит вам, как найти его по сети.

существуют также унифицированные ссылки на ресурсы (URCs), которые указывают на метаданные о документе, а не на сам документ. Примером URC может служить индикатор для просмотра исходного кода веб-страницы: view-source:http://example.com/. URC-это другой тип URI, который не является ни URL, ни URN.

Часто Задаваемые Вопросы

я слышал, что я больше не должен говорить URL, почему?

спецификация w3 для HTML говорит, что href якорного тега может содержать URI, а не только URL. Вы должны быть в состоянии положить в урну, такие как <a href="urn:isbn:0451450523">. Затем ваш браузер разрешит эту урну на URL-адрес и загрузит книгу для вас.

есть ли браузеры на самом деле знаете, как получить документы по урне?

не то, что я знаю, но современный веб-браузер реализует схему URI данных.

может ли URI быть как URL, так и URN?

хороший вопрос. Я видел много мест в интернете, которые утверждают, что это правда. Я не смог найти никаких примеров того, что является как URL, так и URN. Я не вижу, как это возможно, потому что урна начинается с urn: которая не является допустимой сетью протокол.

имеет ли разница между URL и URI какое-либо отношение к тому, является ли она относительной или абсолютной?

нет. Как относительные, так и абсолютные URL-адреса являются URL-адресами (и URI.)

имеет ли разница между URL и URI какое-либо отношение к тому, имеет ли он параметры запроса?

нет. Оба URL-адреса с параметрами запроса и без них являются URL-адресами (и URI.)

имеет ли разница между URL и URI какое-либо отношение имеет ли он идентификатор фрагмента?

нет. Оба URL-адреса с идентификаторами фрагментов и без них являются URL-адресами (и URI.)

это tel: URI URL или урна?

tel:1-800-555-5555. Это не начинается с urn: и он имеет протокол для достижения ресурса по сети. Это должен быть URL-адрес.

но разве w3C теперь не говорит, что URL-адреса и URI-это одно и то же?

да. W3C понял, что есть тонна путаница по этому поводу. Они выдали документ разъяснения URI это говорит о том, что теперь можно использовать URL и URI взаимозаменяемо. Больше не полезно строго сегментировать URI на различные типы, такие как URL, URN и URC.

URI (унифицированный идентификатор ресурса) в соответствии с Википедия:

строка символов, используемая для идентификации ресурса.

URL (Uniform Resource Locator) - это URI, который подразумевает механизм взаимодействия с ресурсом. например https://www.google.com указывает использование HTTP в качестве механизма взаимодействия. Не все URI должны передавать специфичную для взаимодействия информацию.

урна (Единое Имя Ресурса) - это конкретная форма URI, которая имеет urn как схему. Для получения дополнительной информации об общей форме URI см. https://en.wikipedia.org/wiki/Uniform_Resource_Identifier#Syntax

IRI (международный идентификатор ресурса) это пересмотр определения URI, который позволяет нам использовать международные символы в URI.