Примеры URI, URL и URN

Я прочитал много статей об URI, URL и URN, но я не понимаю разницу в реальных примерах.

Не могли бы вы привести несколько примеров URI и URL?

Я думаю http://stack.com/first/index.html?submit=yes&action=go#second такое URI, а не URL, да?

затем http://stack.com/first/index.html такое URL, потому что он не такой специфичный?

Это изображение правильно?

2 ответа

Вот цитата из " ОТДЫХА на практике" Дж. Веббера, С. Парастатидиса, И. Робинсона, которая отражает суть различий:

URL и URN являются специальными формами URI.

URI, который идентифицирует механизм доступа к ресурсу, обычно называется URL. HTTP URI являются примерами URL.

Если URI имеет урну в качестве своей схемы и соответствует требованиям RFC 2141 и RFC 2611, это URN. Целью URN является предоставление глобально уникальных имен для ресурсов.

Кстати, ISBN этой книги - ISBN-13: 978-0596805821. Если вы нажмете на ссылку Amazon.com Почему важен ISBN, вы увидите всплывающую подсказку:

Этот номер штрих-кода позволяет вам убедиться, что вы получаете абсолютно правильную версию или издание книги.

Это пример URN (и URI по определению) в urn:isbn пространство имен, которое не предполагает какой-либо механизм извлечения этого ресурса, но идентифицирует его.

Если у вас есть какая-то ссылка на книгу в Интернете, например, в формате PDF, это будет URL (и URI по определению) и будет выглядеть примерно так:

https://www.somewebsite.org/books/RestInPractice.pdf

Нет, изображение не правильное. Ваши два примера - и URI, и URL.

Каждый URL является URI.
Каждый URN является URI.

Фон

В соответствии с URI, URL и URN W3C : разъяснения и рекомендации 1.0 (также опубликованные IETF под номером RFC 3305):

Использование одного термина для всего: URI или URL

Стандарт Интернета для URI, STD 66 (который в настоящее время соответствует RFC 3986), рекомендует:

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

URL Живой стандарт WHATWG (и его версия W3C) гласит:

Стандартизировать термин URL. URI и IRI просто сбивают с толку. На практике один и тот же алгоритм используется для обоих, поэтому их различие не помогает никому.

Моя рекомендация

  • Используйте "URL" и / или "URI" (или "IRI", если разница значима) для всего.
  • Используйте "URN" только для URI с urn Схема URI, и только если вам нужно быть конкретным.
Другие вопросы по тегам