前言
在一個城市中,所有的東西都有一個標(biāo)準(zhǔn)化的名字跷究,以幫助人們尋找城市中的各種資源姓迅,如寧波火車站地鐵站,
在因特網(wǎng)這座大城市中俊马,URL就是其標(biāo)準(zhǔn)化名稱丁存,它指向每一條電子信息,告訴你它們位于何處柴我,以及如何與之交互解寝。
URL語法
URL提供了一種定位因特網(wǎng)上任意資源的手段
常見的URL
我們在使用瀏覽器時,一般使用如下的URL:
http://www.joes-hardware.com/seasonal/index-fall.html
URL的第一部分(http)是URL方案,方案告知Web客戶端 怎樣訪問資源
URL的第二部分(www.joes-hardware.com)指的是服務(wù)器的位置艘儒,這部分告知Web客戶端位于何處
URL的第三部分(/seasonal/index-fall.html)是資源路徑聋伦,說明了請求的是服務(wù)器上哪個特定的資源
URL具體語法
因特網(wǎng)上的資源是可以通過不同的方案進行訪問的夫偶,因此URL的語法會隨著方案的不同而有所不同,但是其實大部分URL都是尊徐URL語法的觉增,其通用格式如下兵拢,最重要的3個部分是方案(scheme),主機(host)和路徑(path)
<scheme>://<user>:<password>@<host>:<port>/<path>;<parame>?<query>#<frag>
URL組件
方案
方案會告訴負責(zé)解析URL的應(yīng)用程序應(yīng)該使用什么協(xié)議逾礁,方案組件必須以一個字母符號開始说铃,由一個“:”符號與其余部分分割開來,大小寫無關(guān)
主機與端口
要想在因特網(wǎng)上找到資源敞斋,應(yīng)用程序要知道是哪臺機器裝載了資源截汪,以及在那臺機器上的什么地方可以找到能對目標(biāo)資源進行訪問的服務(wù)器
主機標(biāo)識了訪問資源的宿主機器,可以通過主機名或IP地址來表示植捎,如:
端口標(biāo)識了服務(wù)器正在監(jiān)聽的網(wǎng)絡(luò)端口衙解,如同進入房間的一扇門
用戶名和密碼
很多服務(wù)器會要求輸入用戶名和密碼才會允許用戶訪問數(shù)據(jù),當(dāng)沒有提供時焰枢,通常會插入一個默認的用戶名和密碼
路徑
路徑租金高說明了資源位于服務(wù)器的什么地方蚓峦,路徑通常很像一個分級 的文件系統(tǒng)路徑,每個路徑段都有自己的參數(shù)組件济锄。
參數(shù)
對于一些方案來說暑椰,主機,路徑荐绝,用戶名等不能滿足其訪問需求一汽,負責(zé)解析URL的應(yīng)用程序需要更多的參數(shù)來訪問資源,如:
查詢字符串
很多資源低滩,都是可以通過提問題或進行查詢來縮小所請求資源類型范圍的召夹,如下
- http://www.joes-hardware.com/inventory-check.cgi?item=12731&color=blue, 查詢編號為12731且顏色為藍色的條目是否存在
片段
當(dāng)我們只想訪問整個資源中的一部分時,就可以使用片段恕沫。
為了引用部分資源或資源的一個片段监憎,URL支持使用片段組件來表示一個資源內(nèi)部的片段,如: