URI(Uniform Resource Identifier)通用資源標(biāo)志符。是互聯(lián)網(wǎng)的一個協(xié)議要素,可以通過它來定位任何遠(yuǎn)程或本地的可用資源(這些資源通常包括HTML文檔、圖像、視頻片段、程序等)。
URI的通用格式
協(xié)議: [//][[用戶名[:密碼]@]主機(jī)名[:端口號]][/資源路徑]
其中協(xié)議指的是訪問資源使用的協(xié)議名稱,常見的有http、ftp、mailto、file等。協(xié)議和主機(jī)名稱或IP地址間使用半角冒號(:)連接,包含資源路徑的冒號后還有兩個半角斜杠(//)。
下面我們來看一個例子,比如http://www.shenmeshi.com/Business/Business_20070211204322.html,我們來分析一下這個URI,對比URI的通用格式可以看出:
協(xié)議(http):[//][用戶名與密碼都是匿名省略]主機(jī)名(www.shenmeshi.com)[端口號,協(xié)議默認(rèn)省略][/資源路徑(Business/Business_20070211204322.html)]
一句話:通過HTTP協(xié)議訪問的資源,位于主機(jī)www.shenmeshi.com上,通過路徑“/Business/Business_20070211204322.html”訪問。
在HTML文檔中其它資源包括"mailto"(收發(fā)email)和"ftp"(FTP訪問)。
片段標(biāo)志符
有的URI指向一個資源的內(nèi)部。 這種URI以"#"結(jié)束,并跟著一個anchor標(biāo)志符(稱為片段標(biāo)志符)。例如,下面是一個指向section_2的URI:http://www.shenmeshi.com/index.html#section_2
相對URI
相對URI 不包含任何命名規(guī)范信息。它的路徑通常指同一臺機(jī)器上的資源。相對URI可能含有相對路徑(如,“..”表示上一層路徑),還可能包含片段標(biāo)志符。
下面的鏈接中使用了相對URI:
<A href="index.html">什么是首頁</A>
它擴(kuò)展成完全的URI就是http://www.shenmeshi.com/index.html;
下面是一個圖像的相對URI:
<IMG src=“/Skin/new2007/logo.gif” alt="logo">
它擴(kuò)展成完全的URI就是http://www.shenmeshi.com/Skin/new2007/logo.gif。
URI在HTML的應(yīng)用
鏈接到另一個文檔或資源(參看A和LINK元素)。
鏈接到一個外部樣式表或腳本(參看LINK和SCRIPT元素)。
在頁內(nèi)包含圖像、對象或applet(參看IMAG、OBJECT、APPLET和INPUT元素)。
建立圖像映射(參看MAP和AREA元素)。
提交一個表單(參看FORM)。
建立一個框架文檔(參看FRAME和IFRAME元素)。
引用一個外部參考(參看Q、BLOCKQUOTE, INS和DEL元素)。
指向一個描述文檔的metadata(參看HEAD元素)。
URI與URL的區(qū)別
URL只是URI的一個子集。URI包括URL和URN(Uniform Resource Name)兩部分。