URI和URL的區別

 

URI:Uniform Resource Identifier,統一資源標識符java

URL:Uniform Resource Location統一資源定位符服務器

它們有什麼關係

URI是一個用於標識互聯網資源名稱的字符串。 該種標識容許用戶對網絡中(通常指萬維網)的資源經過特定的協議進行交互操做。URI的最多見的形式是統一資源定位符(URL),常常指定爲非正式的網址。更罕見的用法是統一資源名稱(URN),其目的是經過提供一種途徑。用於在特定的命名空間資源的標識,以補充網址。網絡

通俗地說,URL和URN是URI的子集,URI屬於URL更高層次的抽象,一種字符串文本標準。unix

三者關係以下圖:code


 
圖示

有什麼區別

上面雖然大概介紹了這二者的區別,不過感受仍是有些模糊,下面着重研究區別。orm

首先,URI,是統一資源標識符,用來惟一的標識一個資源。而URL是統一資源定位器,它是一種具體的URI,即URL能夠用來標識一個資源,並且還指明瞭如何locate這個資源。而URN,統一資源命名,是經過名字來標識資源,好比mailto:java-net@java.sun.com。也就是說,URI是以一種抽象的,高層次概念定義統一資源標識,而URL和URN則是具體的資源標識的方式。URL和URN都是一種URI;
URL是URI的一種(經過那個圖就看的出來吧)。但也不是全部的URI都是URL哦,就好像蝴蝶都會飛,但會飛的可不都是蝴蝶啊!
讓URI能成爲URL的固然就是那個「訪問機制」,「網絡位置」。e.g. http://
or ftp://.。URN是惟一標識的一部分,就是一個特殊的名字。視頻

下面就來看看例子吧,當來也是來自權威的RFC:server

這些全都是URI, 其中有些是URL. 哪些? 就是那些提供了訪問機制的.xml

各自的組成

1. URI
Web上可用的每種資源如HTML文檔、圖像、視頻片斷、程序等都是一個來URI來定位的;
URI通常由三部組成ip

①訪問資源的命名機制
②存放資源的主機名
③資源自身的名稱,由路徑表示,着重強調於資源。

2. URL
URL是Internet上用來描述信息資源的字符串,主要用在各類WWW客戶程序和服務器程序上,特別是著名的Mosaic。
採用URL能夠用一種統一的格式來描述各類信息資源,包括文件、服務器的地址和目錄等。
URL通常由三部組成

①協議(或稱爲服務方式)
②存有該資源的主機IP地址(有時也包括端口號)
③主機資源的具體地址。如目錄和文件名等
參考:https://www.jianshu.com/p/ba15d066f777
相關文章
相關標籤/搜索