URI和URL的區(qū)別有哪些_URI的格式 IT知識(shí)
電腦知識(shí) 由優(yōu)爾供稿HTTP使用統(tǒng)一資源標(biāo)識(shí)符(Uniform Resource Identifiers, URI)來(lái)傳輸數(shù)據(jù)和建立連接。URL是一種特殊類(lèi)型的URI,包含了用于查找某個(gè)資源的足夠的信息。下面是9252兒童網(wǎng)小編為大家整理的URI和URL的區(qū)別,希望能對(duì)大家有所幫助。
URI和URL的區(qū)別
URI,是uniform resource identifier,統(tǒng)一資源標(biāo)識(shí)符,用來(lái)唯一的標(biāo)識(shí)一個(gè)資源。
Web上可用的每種資源如HTML文檔、圖像、視頻片段、程序等都是一個(gè)來(lái)URI來(lái)定位的
URI一般由三部組成:
①訪(fǎng)問(wèn)資源的命名機(jī)制
②存放資源的主機(jī)名
③資源自身的名稱(chēng),由路徑表示,著重強(qiáng)調(diào)于資源。
URL是uniform resource locator,統(tǒng)一資源定位器,它是一種具體的URI,即URL可以用來(lái)標(biāo)識(shí)一個(gè)資源,而且還指明了如何locate這個(gè)資源。
URL是Internet上用來(lái)描述信息資源的字符串,主要用在各種WWW客戶(hù)程序和服務(wù)器程序上,特別是著名的Mosaic。
采用URL可以用一種統(tǒng)一的格式來(lái)描述各種信息資源,包括文件、服務(wù)器的地址和目錄等。
URL一般由三部組成:
①協(xié)議(或稱(chēng)為服務(wù)方式)。
②存有該資源的主機(jī)IP地址(有時(shí)也包括端口號(hào))。
③主機(jī)資源的具體地址。如目錄和文件名等。
URN,uniform resource name,統(tǒng)一資源命名,是通過(guò)名字來(lái)標(biāo)識(shí)資源,比如mailto:java-net@java.sun.com。
URI是以一種抽象的,高層次概念定義統(tǒng)一資源標(biāo)識(shí),而URL和URN則是具體的資源標(biāo)識(shí)的方式。URL和URN都是一種URI。籠統(tǒng)地說(shuō),每個(gè) URL 都是 URI,但不一定每個(gè) URI 都是 URL。這是因?yàn)?URI 還包括一個(gè)子類(lèi),即統(tǒng)一資源名稱(chēng) (URN),它命名資源但不指定如何定位資源。上面的 mailto、news 和 isbn URI 都是 URN 的示例。
在Java的URI中,一個(gè)URI實(shí)例可以代表絕對(duì)的,也可以是相對(duì)的,只要它符合URI的語(yǔ)法規(guī)則。而URL類(lèi)則不僅符合語(yǔ)義,還包含了定位該資源的信息,因此它不能是相對(duì)的。
在Java類(lèi)庫(kù)中,URI類(lèi)不包含任何訪(fǎng)問(wèn)資源的方法,它唯一的作用就是解析。
相反的是,URL類(lèi)可以打開(kāi)一個(gè)到達(dá)資源的流。
URI的格式
表示指定的 URI,要使用涵蓋全部必要信息的絕對(duì) URI、絕對(duì) URL 以及相對(duì) URL。相對(duì) URL,是指從瀏覽器中基本 URI 處指定的 URL,形如 /image/logo.gif。
URI格式由URI協(xié)議名(例如http、ftp、mailto、file),一個(gè)冒號(hào),和協(xié)議對(duì)應(yīng)的內(nèi)容所構(gòu)成。特定的協(xié)議定義了協(xié)議內(nèi)容的語(yǔ)法和語(yǔ)義,而所有的協(xié)議都必須遵循一定的URI文法通用規(guī)則,亦即為某些專(zhuān)門(mén)目的保留部分特殊字符。URI文法同時(shí)也就各種原因?qū)f(xié)議內(nèi)容加以其他的限制,例如,保證各種分層協(xié)議之間的協(xié)同性。百分號(hào)編碼也為URI提供附加信息。
URL的格式由下列三部分組成:,第一部分是協(xié)議(或稱(chēng)為服務(wù)方式);第二部分是存有該資源的主機(jī)IP地址(有時(shí)也包括端口號(hào));第三部分是主機(jī)資源的具體地址。
具體URI的格式如下:
[協(xié)議名]://[用戶(hù)名]:[密碼]@[服務(wù)器地址]:[服務(wù)器端口號(hào)]/[路徑]?[查詢(xún)字符串]#[片段ID]
登錄信息(用戶(hù)名:密碼)
指定用戶(hù)名和密碼作為從服務(wù)器端獲取資源時(shí)必要的登錄信息(身份認(rèn)證)。此項(xiàng)是可選項(xiàng)。
服務(wù)器地址
使用絕對(duì) URI 必須指定待訪(fǎng)問(wèn)的服務(wù)器地址。地址可以是類(lèi)似 hackr.jp 這種 DNS 可解析的名稱(chēng),或是 192.168.1.1 這類(lèi) IPv4 地址 名,還可以是 [0:0:0:0:0:0:0:1] 這樣用方括號(hào)括起來(lái)的 IPv6 地址名。
服務(wù)器端口號(hào)
指定服務(wù)器連接的網(wǎng)絡(luò)端口號(hào)。此項(xiàng)也是可選項(xiàng),若用戶(hù)省略則自動(dòng)使用默認(rèn)端口號(hào)。
帶層次的文件路徑
指定服務(wù)器上的文件路徑來(lái)定位特指的資源。這與 UNIX 系統(tǒng)的文件目錄結(jié)構(gòu)相似。
查詢(xún)字符串
針對(duì)已指定的文件路徑內(nèi)的資源,可以使用查詢(xún)字符串傳入任意參數(shù)。此項(xiàng)可選。
片段標(biāo)識(shí)符
使用片段標(biāo)識(shí)符通常可標(biāo)記出已獲取資源中的子資源(文檔內(nèi)的某個(gè)位置)。但在 RFC 中并沒(méi)有明確規(guī)定其使用方法。該項(xiàng)也為可選項(xiàng)。
URL是什么?
URL,全稱(chēng)是UniformResourceLocator, 中文叫統(tǒng)一資源定位符,是互聯(lián)網(wǎng)上用來(lái)標(biāo)識(shí)某一處資源的地址。以下面這個(gè)URL為例,介紹下普通URL的各部分組成:
https://www.aspxfans.com:8080/news/index.asp?boardID=5&ID=24618&page=1#name
從上面的URL可以看出,一個(gè)完整的URL包括以下幾部分:
1.協(xié)議部分:該URL的協(xié)議部分為“http:”,這代表網(wǎng)頁(yè)使用的是HTTP協(xié)議。在Internet中可以使用多種協(xié)議,如HTTP,F(xiàn)TP等等本例中使用的是HTTP協(xié)議。在"HTTP"后面的“//”為分隔符
2.域名部分:該URL的域名部分為“www.aspxfans.com”。一個(gè)URL中,也可以使用IP地址作為域名使用
3.端口部分:跟在域名后面的是端口,域名和端口之間使用“:”作為分隔符。端口不是一個(gè)URL必須的部分,如果省略端口部分,將采用默認(rèn)端口
4.虛擬目錄部分:從域名后的第一個(gè)“/”開(kāi)始到最后一個(gè)“/”為止,是虛擬目錄部分。虛擬目錄也不是一個(gè)URL必須的部分。本例中的虛擬目錄是“/news/”
5.文件名部分:從域名后的最后一個(gè)“/”開(kāi)始到“?”為止,是文件名部分,如果沒(méi)有“?”,則是從域名后的最后一個(gè)“/”開(kāi)始到“#”為止,是文件部分,如果沒(méi)有“?”和“#”,那么從域名后的最后一個(gè)“/”開(kāi)始到結(jié)束,都是文件名部分。本例中的文件名是“index.asp”。文件名部分也不是一個(gè)URL必須的部分,如果省略該部分,則使用默認(rèn)的文件名
6.錨部分:從“#”開(kāi)始到最后,都是錨部分。本例中的錨部分是“name”。錨部分也不是一個(gè)URL必須的部分
7.參數(shù)部分:從“?”開(kāi)始到“#”為止之間的部分為參數(shù)部分,又稱(chēng)搜索部分、查詢(xún)部分。本例中的參數(shù)部分為“boardID=5&ID=24618&page=1”。參數(shù)可以允許有多個(gè)參數(shù),參數(shù)與參數(shù)之間用“&”作為分隔符。
- 大數(shù)據(jù)的概念及趨勢(shì)_大數(shù)據(jù)的特點(diǎn)
- c語(yǔ)言的應(yīng)用及注意事項(xiàng)_C語(yǔ)言編譯器gcc命令
- C語(yǔ)言的用法及特點(diǎn)_C語(yǔ)言怎樣輸出菱形
- it入門(mén)基礎(chǔ)常識(shí)有哪些_IT英文縮寫(xiě)
- IT技術(shù)知識(shí)有哪些_IT互聯(lián)網(wǎng)基礎(chǔ)知識(shí)術(shù)語(yǔ)
- 電腦鍵盤(pán)功能基礎(chǔ)知識(shí)有哪些_鍵盤(pán)按鍵的入
- c語(yǔ)言入門(mén)基礎(chǔ)常識(shí)有哪些_C程序的生成過(guò)程
- it必須學(xué)的基礎(chǔ)知識(shí)有哪些_IT英文縮寫(xiě)
- 計(jì)算機(jī)組裝維護(hù)知識(shí)有哪些_計(jì)算機(jī)應(yīng)用
- java入門(mén)知識(shí)有哪些_java語(yǔ)言特點(diǎn)
- java語(yǔ)法基礎(chǔ)知識(shí)有哪些_java技術(shù)應(yīng)用
- c語(yǔ)言冷知識(shí)有哪些_C語(yǔ)言知識(shí)點(diǎn)歸納