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地址(有時也包括端口號) ③主機資源的具體地址。如目錄和文件名等