Skip to main content

URI, URL e URN | Estrutura de uma URI/URL | API | CSharp

  • URI, URL e URN | Estrutura de uma URI/URL | API | CSharp

Definições de URN, URL e URI

Esses três termos estão relacionados à maneira como identificamos recursos na web. Eles têm finalidades específicas, e é importante entender suas diferenças e como eles se inter-relacionam.


URI (Uniform Resource Identifier)

Um URI é uma cadeia de caracteres usada para identificar um recurso de forma única. Ele pode ser usado para identificar qualquer tipo de recurso, seja físico ou abstrato.

URI é um termo mais amplo e engloba URL e URN. Um URI pode ser um localizador (URL) ou um nome (URN), ou ambos.

Exemplo de URI:

  • https://example.com/resource (que é uma URL, mas também um URI)
  • urn:isbn:0451450523 (que é uma URN, mas também um URI)

URI pode ser tanto localizador (URL) quanto um nome (URN), dependendo de como é usado para identificar o recurso.


URL (Uniform Resource Locator)

Um URL é um tipo de URI que localiza um recurso especificando sua localização na rede e o método (ou protocolo) para acessá-lo. Em outras palavras, é um "endereço" que aponta para onde um recurso pode ser encontrado, como uma página web ou um arquivo, e define como acessá-lo, geralmente com um protocolo como http, https, ftp, etc.

Exemplo de URL:

  • https://example.com/index.html (localiza uma página HTML)
  • ftp://ftp.example.com/file.txt (localiza um arquivo via FTP)

Neste exemplo, https e ftp são os protocolos usados para acessar os recursos, e o restante da URL indica onde os recursos estão localizados.


URN (Uniform Resource Name)

Um URN é um tipo de URI que serve como um nome exclusivo para um recurso, mas não indica onde ele está localizado ou como acessá-lo. Ele simplesmente define a identidade do recurso de maneira única e persistente. Um exemplo clássico de URN é um número ISBN para livros, que identifica um livro específico, mas não diz onde encontrá-lo.

Exemplo de URN:

  • urn:isbn:0451450523 (identifica um livro pelo número ISBN)
  • urn:uuid:123e4567-e89b-12d3-a456-426614174000 (identifica um recurso por seu UUID)

Um URN serve apenas como um identificador, sem fornecer um meio de localizar o recurso.


Resumo das Diferenças:

  • URI: Um identificador genérico que pode ser um URL, URN, ou ambos.
  • URL: Um URI que inclui a localização do recurso (endereço) e o protocolo para acessá-lo.
  • URN: Um URI que é um identificador único de um recurso, mas não fornece a localização ou método de acesso.

Exemplos para melhor entendimento:

  1. URI (geral):

    • https://example.com/resource (Este é um URL e, portanto, também um URI)
    • urn:isbn:0451450523 (Este é um URN e, portanto, também um URI)
  2. URL (especificamente um localizador):

    • https://www.example.com/path/to/resource (Protocolo https, localizando um recurso específico na web)
  3. URN (especificamente um nome):

    • urn:isbn:0451450523 (Identifica um livro, mas não diz onde encontrá-lo)

Conclusão:

  • URI é o conceito mais geral, que inclui tanto URN quanto URL.
  • Um URL te dá o "endereço" de onde o recurso pode ser encontrado.
  • Um URN te dá um "nome" único e persistente para um recurso, sem te dizer onde ele está ou como acessá-lo.

alt text