洞悉互聯(lián)網(wǎng)前沿資訊,探尋網(wǎng)站營銷規(guī)律
作者:狐靈科技 | 2021-11-27 17:44 |點(diǎn)擊:
每一個(gè) URL 都代表著一個(gè)資源對(duì)象,而當(dāng)我們請(qǐng)求一個(gè)網(wǎng)頁的時(shí)候,看似只請(qǐng)求了一個(gè) URI(統(tǒng)一資源標(biāo)識(shí)符),實(shí)際上這個(gè)網(wǎng)頁可能包含多個(gè) URI,例如圖片資源的 URI 和視頻資源的 URI 等。此時(shí)有些瀏覽器為了加快訪問速度,可能會(huì)同時(shí)開多個(gè)線程去請(qǐng)求 URI。也就是說其實(shí)每一個(gè) URI 都發(fā)送了一個(gè)請(qǐng)求報(bào)文。
URI 包括 URL(統(tǒng)一資源定位符)和 URN(統(tǒng)一資源名)。但由于 URN 多還在實(shí)驗(yàn)階段,實(shí)驗(yàn)的并不是太廣泛,所以現(xiàn)在幾乎所有的 URI 都是 URL。
而當(dāng)我們的瀏覽器要顯示或處理這些資源的時(shí)候,我們并不知道其響應(yīng)的數(shù)據(jù)是什么類型的,為了區(qū)分這些資源類型,就需要用到 MIME 了。HTTP 會(huì)為每一個(gè)通過 web 傳輸?shù)膶?duì)象添加上 MIME 類型的數(shù)據(jù)格式標(biāo)簽。瀏覽器在讀取到對(duì)應(yīng)的信息后,會(huì)調(diào)用相應(yīng)的程序去處理它,任何得到我們想要的結(jié)果。
MIME 類型在請(qǐng)求報(bào)文和響應(yīng)報(bào)文中均有體現(xiàn)。例如,當(dāng)我請(qǐng)求 http://www.cnblogs.com/scolia 這個(gè) URL 時(shí),
我的請(qǐng)求報(bào)文頭中有:
Accept 表示我當(dāng)前的瀏覽器希望接受什么類型的文件,這是請(qǐng)求首部,當(dāng)服務(wù)器沒有客戶端想要的資源的媒體類型時(shí),會(huì)返回406 Not Acceptable 響應(yīng)。當(dāng)然使用了 */* 表示愿意接受任意類型的資源,所以應(yīng)不會(huì)看到這個(gè)響應(yīng)。另外,這里的 q 表示權(quán)重,權(quán)重在 0-1 之間,可以理解成客戶端在這些給出的類型中,想優(yōu)先接受什么類型,可以服務(wù)器就可以根據(jù)客戶端的需要返回相應(yīng)的資源。
如果沒有,則默認(rèn)為 1 。這里前面幾個(gè)類型都沒有標(biāo)明,則默認(rèn)都是 1 ,表示優(yōu)先這些類型,后面的 0.9 表示前面都沒有就用這個(gè),最后的 0.8 表示如果都沒有,那么任意的類型都行。
而在響應(yīng)報(bào)文頭中有:
這里很并且的表示我響應(yīng)的是 text/html 類型的文件,瀏覽器在檢測到 MIME 類型后,就會(huì)相應(yīng)的去解析它。
但是,我說過看似請(qǐng)求的一個(gè) URL 實(shí)際上包含了多個(gè) URL ,如果你用工具查看,我這里用的是火狐的控制臺(tái),可以看到我這次的請(qǐng)求有:
非常多個(gè),我們看一下背景圖片的 MIME 類型是什么:
MIME 類型有非常多種,一般常見的有:
text/html:HTML 格式的文本文檔
text/plain:普通的 ASCII 文本文檔
image/jpeg:JPEG格式的圖片
image/gif:GIF格式的圖片
video/quicktime:Apple 的 QuickTime 電影
application/vnd.ms-powerpoint:微軟的powerpoint文件