HTTP請(qǐng)求以及緩存

HTTP的定義:

hypertext transfer protocol超文本傳輸協(xié)議,是一個(gè)應(yīng)用層的協(xié)議,是在互聯(lián)網(wǎng)中傳輸數(shù)據(jù)的一個(gè)規(guī)定,是萬(wàn)維網(wǎng)中數(shù)據(jù)傳輸?shù)幕A(chǔ)

報(bào)文:服務(wù)器與瀏覽器之間傳輸數(shù)據(jù)的格式
組成:
1)對(duì)報(bào)文進(jìn)行描述的起始行
2)包含屬性的首部塊
3)可選的包含數(shù)據(jù)的主體部分

01 HTTP的請(qǐng)求與響應(yīng)

  • HTTP請(qǐng)求:
POST / HTTP1.1 
Host:www.wrox.com 
User-Agent:Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022) 
Content-Type:application/x-www-form-urlencoded 
Content-Length:40 Connection: Keep-Alive

name=Professional%20Ajax&publisher=Wiley 

第?部分:請(qǐng)求?,第??說(shuō)明是post請(qǐng)求,以及http1.1版本。
第?部分:請(qǐng)求頭部,第???第六?。
第三部分:空?,第七?的空?。
第四部分:請(qǐng)求數(shù)據(jù),第??。

  • 服務(wù)器處理請(qǐng)求并返回HTTP報(bào)?
    后端處理返回http報(bào)?如下:
HTTP/1.1 200 OK Date: Fri, 22 May 2009 06:07:21 GMT 
Content-Type: text/html; charset=UTF-8

<html>
  <head></head> 
  <body>
     <!--body goes here-->
  </body> 
</html>

第??為狀態(tài)?,(HTTP/1.1)表明HTTP版本為1.1版本,狀態(tài)碼為200,狀態(tài)消息為(ok)
第??和第三?為消息報(bào)頭, Date:?成響應(yīng)的?期和時(shí)間;Content-Type:指定了MIME類型的HTML(text/html),編碼類型是 UTF-8
第三部分:空?,消息報(bào)頭后?的空?是必須的
第四部分:響應(yīng)正?,服務(wù)器返回給客戶端的?本信息。 空?后?的html部分為響應(yīng)正?。

02 HTTP的緩存

關(guān)于ETag、CacheControl、Expires 的異同

ETag 是通過(guò)對(duì)比瀏覽器和服務(wù)器資源的特征值(如MD5)來(lái)決定是否要發(fā)送文件內(nèi)容,如果一樣就只發(fā)送 304(not modified)
Expires 是設(shè)置過(guò)期時(shí)間(絕對(duì)時(shí)間),但是如果用戶的本地時(shí)間錯(cuò)亂了,可能會(huì)有問(wèn)題
CacheControl: max-age=3600 是設(shè)置過(guò)期時(shí)長(zhǎng)(相對(duì)時(shí)間),跟本地時(shí)間無(wú)關(guān)。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容