URI&URL&URN的識別與意義

當(dāng)你需要存儲或者獲取一個資源地址時用URI好還是URL好侨糟?首先要明確一下三個名稱的意義

URI、URL和URN

URI?:Uniform Resource Identifier,統(tǒng)一資源標(biāo)識符烦粒;

URL:Uniform Resource Locator,統(tǒng)一資源定位符荠列;

URN:Uniform Resource Name,統(tǒng)一資源名稱载城。

URIs, URLs, and URNs

首先,URI费就,是uniform resource identifier诉瓦,統(tǒng)一資源標(biāo)識符,用來唯一的標(biāo)識一個資源力细。而URL是uniform resource locator睬澡,統(tǒng)一資源定位器,它是一種具體的URI眠蚂,即URL可以用來標(biāo)識一個資源煞聪,而且還指明了如何locate這個資源。而URN逝慧,uniform resource name昔脯,統(tǒng)一資源命名,是通過名字來標(biāo)識資源笛臣,比如mailto:java-net@java.sun.com云稚。也就是說,URI是以一種抽象的沈堡,高層次概念定義統(tǒng)一資源標(biāo)識静陈,而URL和URN則是具體的資源標(biāo)識的方式。URL和URN都是一種URI。

在Java的URI中鲸拥,一個URI實例可以代表絕對的拐格,也可以是相對的,只要它符合URI的語法規(guī)則刑赶。而URL類則不僅符合語義捏浊,還包含了定位該資源的信息,因此它不能是相對的角撞,schema必須被指定呛伴。

ok,現(xiàn)在回答文章開頭提出的問題谒所,到底是imgUrl好呢热康,還是imgUri好?顯然劣领,如果說imgUri是肯定沒問題的姐军,因為即使它實際上是url,那它也是uri的一種尖淘。那么用imgUrl有沒有問題呢奕锌?此時則要看它的可能取值村生,如果是絕對路徑辽话,能夠定位的,那么用imgUrl是沒問題的,而如果是相對路徑幽告,那還是不要用ImgUrl的好≥锛ィ總之媒殉,用imgUri是肯定沒問題的,而用imgUrl則要視實際情況而定。

第二個攒暇,從HttpServletRequest的javadoc中可以看出证杭,getRequestURI返回一個String镇饺,“the part of this request’s URL from the protocol name up to the query string in the first line of the HTTP request”李茫,比如“POST /some/path.html?a=b HTTP/1.1”存筏,則返回的值為”/some/path.html”。現(xiàn)在可以明白為什么是getRequestURI而不是getRequestURL了椭坚,因為此處返回的是相對的路徑予跌。而getRequestURL返回一個StringBuffer,“The returned URL contains a protocol, server name, port number, and server path, but it does not include query string parameters.”善茎,完整的請求資源路徑券册,不包括querystring。

總結(jié)一下:URL是一種具體的URI,它不僅唯一標(biāo)識資源烁焙,而且還提供了定位該資源的信息航邢。URI是一種語義上的抽象概念,可以是絕對的骄蝇,也可以是相對的膳殷,而URL則必須提供足夠的信息來定位,所以九火,是絕對的赚窃,而通常說的relative URL,則是針對另一個absolute URL岔激,本質(zhì)上還是絕對的勒极。

注:這里的絕對(absolute)是指包含scheme,而相對(relative)則不包含scheme鹦倚。

URI抽象結(jié)構(gòu)[scheme:]scheme-specific-part[#fragment]

[scheme:][//authority][path][?query][#fragment]

authority為[user-info@]host[:port]

http://域名河质,其中http是scheme,//域名是scheme-specific-part震叙,并且它的scheme與scheme-specific-part被冒號分開了掀鹅。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市媒楼,隨后出現(xiàn)的幾起案子乐尊,更是在濱河造成了極大的恐慌,老刑警劉巖划址,帶你破解...
    沈念sama閱讀 218,204評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件扔嵌,死亡現(xiàn)場離奇詭異,居然都是意外死亡夺颤,警方通過查閱死者的電腦和手機痢缎,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,091評論 3 395
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來世澜,“玉大人独旷,你說我怎么就攤上這事×攘眩” “怎么了嵌洼?”我有些...
    開封第一講書人閱讀 164,548評論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長封恰。 經(jīng)常有香客問我麻养,道長,這世上最難降的妖魔是什么诺舔? 我笑而不...
    開封第一講書人閱讀 58,657評論 1 293
  • 正文 為了忘掉前任鳖昌,我火速辦了婚禮备畦,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘遗遵。我一直安慰自己萍恕,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 67,689評論 6 392
  • 文/花漫 我一把揭開白布车要。 她就那樣靜靜地躺著允粤,像睡著了一般。 火紅的嫁衣襯著肌膚如雪翼岁。 梳的紋絲不亂的頭發(fā)上类垫,一...
    開封第一講書人閱讀 51,554評論 1 305
  • 那天,我揣著相機與錄音琅坡,去河邊找鬼悉患。 笑死,一個胖子當(dāng)著我的面吹牛榆俺,可吹牛的內(nèi)容都是我干的售躁。 我是一名探鬼主播,決...
    沈念sama閱讀 40,302評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼茴晋,長吁一口氣:“原來是場噩夢啊……” “哼陪捷!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起诺擅,我...
    開封第一講書人閱讀 39,216評論 0 276
  • 序言:老撾萬榮一對情侶失蹤市袖,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后烁涌,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體苍碟,經(jīng)...
    沈念sama閱讀 45,661評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,851評論 3 336
  • 正文 我和宋清朗相戀三年撮执,在試婚紗的時候發(fā)現(xiàn)自己被綠了微峰。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,977評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡抒钱,死狀恐怖县忌,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情继效,我是刑警寧澤,帶...
    沈念sama閱讀 35,697評論 5 347
  • 正文 年R本政府宣布装获,位于F島的核電站瑞信,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏穴豫。R本人自食惡果不足惜凡简,卻給世界環(huán)境...
    茶點故事閱讀 41,306評論 3 330
  • 文/蒙蒙 一逼友、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧秤涩,春花似錦帜乞、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,898評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至匀谣,卻和暖如春照棋,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背武翎。 一陣腳步聲響...
    開封第一講書人閱讀 33,019評論 1 270
  • 我被黑心中介騙來泰國打工烈炭, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人宝恶。 一個月前我還...
    沈念sama閱讀 48,138評論 3 370
  • 正文 我出身青樓符隙,卻偏偏與公主長得像,于是被迫代替她去往敵國和親垫毙。 傳聞我的和親對象是個殘疾皇子霹疫,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,927評論 2 355

推薦閱讀更多精彩內(nèi)容

  • (原話)談?wù)剬TTP協(xié)議的理解:超文本傳輸協(xié)議更米,應(yīng)用于OSI網(wǎng)絡(luò)模型中的應(yīng)用層,是用于服務(wù)器傳輸超文本到本地瀏覽...
    24_yu閱讀 887評論 0 1
  • 對于URL,大家都比較熟悉毫痕,其他兩個詞就比較陌生了征峦。URI、URL和URN是識別消请、定位和命名互聯(lián)網(wǎng)上的資源的標(biāo)準(zhǔn)途...
    小明yz閱讀 608評論 0 0
  • 作者:錢小錢 鏈接:https://www.zhihu.com/question/19557151/answer/...
    我和咖啡閱讀 501評論 0 0
  • 下文是對維基百科中URI介紹的粗略翻譯栏笆。原文 Uniform Resource Identifier統(tǒng)一資源標(biāo)識符...
    胡不歸vac閱讀 822評論 0 0
  • 痘痘是個惱人的問題蛉加,長在臉上還不夠,還要長在背上缸逃,影響我們肌膚的健康针饥,對于我們的生活或是工作也會有所影響。背上長痘...
    Ann娜閱讀 926評論 0 3