URL、URI、URN三者的關系和區別
URL
統一資源定位符(Uniform Resource Locator,縮寫:URL),是對資源的引用和訪問該資源的方法。俗稱網址,就是瀏覽器地址欄里面的。
一個URL由以下不同的部分組成:
- 協議:通常是https或http,一種告訴瀏覽器或者設備如何訪問資源的方法,當然還有其他的協議,如ftp 、mailto等
- 接下來是://
- 主機名:表示IP地址的注冊名稱(域名)或IP地址,用于識別連接到網絡的設備的數字標識符
- 端口號,前面是冒號:
- 路徑:可以引用文件系統路徑,通常作為一個代碼段使用
- 參數:以問號開頭的可選查詢參數,其中多個參數用&連接
- hash:用于為頁面上的標題提供快速鏈接,如錨點鏈接
URI
與URL類似,統一資源標志符(Uniform Resource Identifier,縮寫:URI),提供了一種識別資源的方法。但與URL不同的是,URI不提供定位所述資源的方法。
URI的最常見的形式是統一資源定位符(URL),經常指定為非正式的網址。由此,可以看出URI是URL的超集,并且每個URL本質上也是一個URI。
URN
統一資源名稱(Uniform Resource Name,縮寫:URN)是統一資源標識(URI)的歷史名字,使用URN作為URI方案。
從集合的角度來考慮,URN和URL都是URI的子集,如圖所示:
下面以一個網址為例,清晰的展示URI、URN、URL三者的內容,可以更加直觀的反應三者的關系:
從概念上總結三者的關系的話,如圖:
圖片