Samgao0312 / Blog

MIT License
1 stars 1 forks source link

【Http】URI、URL和URN #113

Open Samgao0312 opened 2 years ago

Samgao0312 commented 2 years ago

URI

Uniform Resource Indentifier / 统一资源标志符

URI 为了定位某一个特定的资源而且设计的。用于标识互联网上的唯一的资源的一个方式。它包含了 URLURN

URL

Uniform Resource Licator / 统一资源定位器

URL 用来找到这个资源它所在的位置,并且去访问它得到它。

URL 的组成部分:

http://user:pass@host.com:80/path?query=string#hash

此类格式的都叫URL, 比如ftp协议

域名方便记忆、方便传播。

URN

URN (Uniform Resource Name)统一资源名称,这个东西,因为现在使用的不多,所以大家只要了解一下定义就可以了。

首先,它是一个 永久统一资源定位符。什么意思呢? 如果链接连接的资源搬了位置,那么可能导致这个链接访问的时候请求不到具体的内容。一般情况下,比如说现在服务访问的是一个不存在的链接,都会返回404。但是,这个URL是不会告诉你这个资源被搬到了哪个地方的。

怎么样才能访问到你想要返回的这个资源呢? URN就解决这个问题,很多这方面的专家都在研究。如何在出现这种情况的时候,即便当资源被搬到了一个新的位置,还可以通过URN访问的这个地方。也就是说,最终想实现的是,只要你把这个URN指向了这个资源,即便你把这个资源搬来搬到了一个很远的地方,它还是能够找到这资源的。URL不具备这个能力的。

目前还没有非常成熟的一个使用方案,业界也没有什么非常好的一个使用场景。