Quelle est la différence entre URI, URL et URN? [dupliquer]

cette question a déjà une réponse ici:

  • Quelle est la différence entre une URI, une URL et une URN? 31 réponses

Quelle est la différence entre une URI, une URL et une URN? J'ai lu beaucoup de sites (même Wikipedia), mais je ne le comprends pas.

URI: http://www.foo.com/bar.html

URL: http://www.foo.com/bar.html

URN: bar.html

est-ce exact?

205
demandé sur Yi Jiang 2011-02-06 15:40:30

4 réponses

Identificateur de Ressource Uniforme ( URI ) est une chaîne de caractères utilisée pour identifier un nom ou d'une ressource sur Internet

une URI identifie une ressource soit par son emplacement, soit par son nom, ou les deux. une URI a deux spécialisations appelées URL et URN.

un Localisateur de Ressource uniforme ( URL ) est un sous-ensemble de L'Identificateur de Ressource uniforme (URI) qui spécifie où une ressource identifiée est disponible et le mécanisme de la récupérer. Une URL définit comment la ressource peut être obtenue. Il n'est pas nécessaire que ce soit une URL HTTP (http://), une URL peut aussi être (ftp://) ou (smb://).

un nom de Ressource uniforme ( URN ) est un identificateur de Ressource uniforme (URI) qui utilise le schéma URN, et n'implique pas la disponibilité de la ressource identifiée . Les urnes (noms) et les URL (locateurs) sont tous les deux des URIs, et un URI particulier peut être à la fois un nom et un localisateur temps.

les urnes font partie d'une architecture d'information Internet plus vaste qui est composée d'urnes, D'Urques et D'URLs.

bar.html n'est pas une urne . Une urne est similaire au nom d'une personne, tandis qu'une URL est comme une adresse de rue. L'urne définit l'identité de quelque chose, tandis que L'URL fournit une localisation. Essentiellement, "quoi" contre "où". Une urne doit être de ce formulaire <URN> ::= "urn:" <NID> ":" <NSS><NID> est L'identificateur D'espace de nom, et <NSS> est la chaîne de caractères spécifique à L'espace de noms.

pour le dire autrement:

  • une URL est une URI qui identifie une ressource et fournit également les moyens de localiser la ressource en décrivant la façon d'y accéder."
  • une URL est une URI
  • une URI n'est pas nécessairement une URL

je dirais le seul ce qui reste à faire pour le rendre 100% clair serait d'avoir un exemple d'URI qui n'est pas une URL. Nous pouvons utiliser les exemples dans le 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 (?)

vérifiez aussi - https://quintupledev.wordpress.com/2016/02/29/difference-between-uri-url-and-urn /

277
répondu ayush 2017-07-22 20:15:00

ci-dessous je résume l'explication impressionnante de Prateek Joshi .

La théorie:

  • URI (uniform resource identifier) identifie une ressource (document texte, fichier image, etc.)
  • URL (uniform resource locator) est un sous-ensemble de L'URIs qui comprend une localisation de réseau
  • URN (uniform resource name) est un sous-ensemble D'URIs qui incluent un nom dans un espace donné, mais aucun lieu 151980920"

Qui est:

enter image description here

et par exemple:

enter image description here

aussi, si vous ne l'avez pas déjà fait, je vous suggère de lire réponse de Roger Pate .

83
répondu Gustavo Mori 2017-05-23 12:10:11

URL -- Localisateur Uniforme de Ressource

Contient des informations sur la façon de récupérer une ressource à partir de son emplacement. Par exemple:

  • 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 (une URL relative, seulement utile dans le contexte d'une autre URL)

les URLs commencent toujours par un protocole ( http ) et contiennent généralement des informations telles que le nom de l'hôte réseau ( example.com ) et souvent un chemin de document ( /foo/mypage.html ). Les URLs peuvent avoir des paramètres de requête et des identificateurs de fragment.

URN -- Uniform Resource Name

Identifie une ressource par son nom. Il commence toujours par le préfixe urn: Par exemple:

  • urn:isbn:0451450523 identifier un livre par son numéro ISBN.
  • urn:uuid:6e8bc430-9c3a-11d9-9669-0800200c9a66 un identificateur global unique
  • urn:publishing:book - un espace-nom XML qui identifie le document comme un type de livre.

urnes peut identifier des idées et des concepts. Ils ne se limitent pas aux documents d'identification. Lorsqu'une urne représente un document, elle peut être traduite dans une URL par un "résolveur". Le document peut ensuite être téléchargé à partir de L'URL.

URI -- Uniform Resource Identifier

URIs englobe à la fois les URLs, Les URNs et d'autres façons d'indiquer une ressource.

un exemple d'URI qui n'est ni une URL ni une URN serait un URI de données tel que data:,Hello%20World . Il ne s'agit pas d'une URL ou D'une urne car L'URI contient les données. Ni les noms, ni vous dit comment pour le localiser sur le réseau.

il y a aussi des citations de ressources uniformes (URC) qui pointent vers des méta-données sur un document plutôt que vers le document lui-même. Un exemple D'URC serait un indicateur pour visualiser le code source d'une page web: view-source:http://example.com/ . Un URC est un autre type d'URI qui n'est ni URL ni URN.

Foire Aux Questions

j'ai entendu que je ne devrais plus dire URL, pourquoi?

la spécification W3 pour HTML dit que le href d'une étiquette d'ancrage peut contenir une URI, pas seulement une URL. Vous devriez être en mesure de mettre dans une urne comme <a href="urn:isbn:0451450523"> . Votre navigateur résoudrait alors cette urne à une URL et télécharger le livre pour vous.

est-ce que certains navigateurs savent réellement comment récupérer des documents par URN?

pas que je sache, mais navigateur Web moderne ne mettre en œuvre le schéma D'URI de données.

une URI peut-elle être à la fois une URL et une URN?

bonne question. J'ai vu beaucoup d'endroits sur le web cet état, c'est vrai. Je n'ai pas été en mesure de trouver des exemples de quelque chose qui est à la fois une URL et une urne. Je ne vois pas comment c'est possible parce qu'une URNE commence avec urn: qui n'est pas valide protocole réseau.

la différence entre URL et URI est-elle relative ou absolue?

Pas de. Les URLs relatives et absolues sont des URLs (et URIs.)

la différence entre URL et URI a-t-elle quelque chose à voir avec les paramètres de requête?

Pas de. Les deux URLs avec et sans paramètres de requête sont des URLs (et URIs.)

est-ce que la différence entre URL et URI a quelque chose à voir avec le fait qu'il ait ou non un identificateur de fragment?

Pas de. Les deux URLs avec et sans les identificateurs de fragment sont des URLs (et URIs.)

est-ce QU'un tel: URI est une URL ou une URN?

par exemple tel:1-800-555-5555 . Il ne commence pas avec urn: et il a un protocole pour atteindre une ressource sur un réseau. Ça doit être une URL.

mais le w3C ne dit-il pas maintenant que les URLs et les URIs sont la même chose?

Oui. Le W3C s'est rendu compte qu'il y a une tonne de confusion à ce sujet. Ils ont publié un URI du document de clarification qui dit qu'il est maintenant OK pour utiliser les URL et URI de façon interchangeable. Il n'est plus utile de segmenter strictement les URIs en différents types tels que URL, URN et URC.

40
répondu Stephen Ostermiller 2017-07-22 19:44:30

URI (Uniform Resource Identifier) selon Wikipedia :

une chaîne de caractères utilisée pour identifier une ressource.

URL (Uniform Resource Locator) est une URI qui implique un mécanisme d'interaction avec la ressource. par exemple https://www.google.com spécifie L'utilisation de HTTP comme mécanisme d'interaction. Pas tous les Uri besoin de transmettre interaction des informations spécifiques.

URN (Uniform Resource Name) est une forme spécifique d'URI qui a urn comme son schéma. Pour plus d'informations sur la forme générale d'une URI, reportez-vous à https://en.wikipedia.org/wiki/Uniform_Resource_Identifier#Syntax

IRI (International Resource Identifier) est une révision de la définition D'URI qui nous permet d'utiliser personnages dans URIs.

2
répondu gst 2017-07-22 20:01:56