? ?1.URI和URL
? ?URI的全稱為UniformResourceIdentifier,即統(tǒng)一資源標(biāo)志符队他,URL的全稱為UniversalResourceLocator卷仑,即統(tǒng)一資源定位符。
? ?舉例來(lái)說(shuō)漱挎,https://www.baidu.com系枪,它是一個(gè)URL,也是一個(gè)URI磕谅。我們可以通過(guò)URL/URI來(lái)指定了網(wǎng)頁(yè)的唯一訪問(wèn)方式私爷,這其中包括了訪問(wèn)協(xié)議HTTPS、訪問(wèn)路徑(即根目錄)和資源名稱favicon.ico膊夹。通過(guò)這樣一個(gè)鏈接衬浑,我們便可以找到對(duì)應(yīng)的資源,這就是URL/URI放刨。
? ?URL其實(shí)是URI的子集工秩,但不是每一個(gè)URI都是URL,但不是每一個(gè)URL都是URI进统。那么助币,URI與URL有什么區(qū)別呢?其實(shí)螟碎,在URI中還包含一個(gè)子類眉菱,叫做URN,它的全稱為UniversalResourceName掉分,即統(tǒng)一資源名稱俭缓。
? ?URN主要是用于去命名資源名稱克伊,但是卻不指定定位資源。比如svn:csbi:20201220指定了一個(gè)人的CSBI华坦,可以唯一標(biāo)識(shí)這個(gè)人愿吹,但是沒(méi)有告訴可以去哪里找到這個(gè)人。以下URL惜姐、URN和URI的關(guān)系圖犁跪。
? ?2.超文本
? ?超文本,Hypertext歹袁,像我們一般在瀏覽器里看到的一些網(wǎng)頁(yè)其實(shí)就是超文本解析出來(lái)的耘拇,而這些網(wǎng)頁(yè)的源代碼都是通過(guò)HTML寫(xiě)出來(lái)的,當(dāng)中包含了一系列標(biāo)簽宇攻,比如video顯示視頻,h1就是顯示一級(jí)標(biāo)題等倡勇。瀏覽器通過(guò)解析網(wǎng)頁(yè)中的標(biāo)簽逞刷,就可以顯示我們?cè)跒g覽器上看到的網(wǎng)頁(yè),而網(wǎng)頁(yè)的源代碼HTML就可以稱作超文本妻熊。
? ?3.HTTP和HTTPS
? ?HTTP的全稱是HyperTextTransferProtocol夸浅,中文名叫作超文本傳輸協(xié)議,HTTP協(xié)議主要是將網(wǎng)絡(luò)上的超文本數(shù)據(jù)傳輸?shù)奖镜氐臑g覽器上的一種傳送協(xié)議扔役。HTTP由萬(wàn)維網(wǎng)協(xié)會(huì)(WorldWideWebConsortium)和Internet工作小組IETF(InternetEngineeringTaskForce)共同合作制定的規(guī)范帆喇,目前用的最多的就是HTTP1.1版本。
? ?HTTPS的全稱是HyperTextTransferProtocoloverSecureSocketLayer亿胸,是HTTP的加強(qiáng)版坯钦,是在HTTP基礎(chǔ)上加入SSL層(安全層),簡(jiǎn)稱為HTTPS侈玄。
? ?HTTPS的安全基礎(chǔ)基于SSL層婉刀,所以它傳輸?shù)臄?shù)據(jù)都是經(jīng)過(guò)SSL層加密的。
? ?它的主要作用可以分為以下兩種:
? ?建立數(shù)據(jù)安全交互通道序仙,保證數(shù)據(jù)在傳輸過(guò)程中的安全突颊。
? ?保證網(wǎng)站的真實(shí)性。
? ?目前已經(jīng)有越來(lái)越多的網(wǎng)頁(yè)使用HTTPS,例如:
? ?蘋(píng)果公司就要求所有的iosApp都要使用HTTPS加密潘悼。
? ?谷歌瀏覽器中也對(duì)未使用HTTPS的網(wǎng)頁(yè)通過(guò)“此網(wǎng)頁(yè)不安全”來(lái)提醒用戶律秃。
? ?騰訊的微信小程序也要求必須使用HTTPS。
? ?因此治唤,HTTPS的使用已經(jīng)是大勢(shì)所趨棒动。
? ?4.HTTP請(qǐng)求過(guò)程
? ?當(dāng)我們?cè)跒g覽器中訪問(wèn)一個(gè)URL,實(shí)際上是瀏覽器想網(wǎng)站的服務(wù)器發(fā)送請(qǐng)求肝劲,當(dāng)網(wǎng)站服務(wù)器接收到請(qǐng)求后就進(jìn)行處理和解析迁客,然后將響應(yīng)的內(nèi)容返回給瀏覽器郭宝。
? ?傳輸模型如圖所示。