• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            woaidongmao

            文章均收錄自他人博客,但不喜標(biāo)題前加-[轉(zhuǎn)貼],因其丑陋,見(jiàn)諒!~
            隨筆 - 1469, 文章 - 0, 評(píng)論 - 661, 引用 - 0
            數(shù)據(jù)加載中……

            關(guān)于http的Last-Modified

            1) 什么是”Last-Modified”?

                   
            在瀏覽器第一次請(qǐng)求某一個(gè)URL時(shí),服務(wù)器端的返回狀態(tài)會(huì)是200,內(nèi)容是你請(qǐng)求的資源,同時(shí)有一個(gè)Last-Modified的屬性標(biāo)記此文件在服務(wù)期端最后被修改的時(shí)間,格式類(lèi)似這樣: 

                    Last-Modified: Fri, 12 May 2006 18:53:33 GMT

                   
            客戶(hù)端第二次請(qǐng)求此URL時(shí),根據(jù) HTTP 協(xié)議的規(guī)定,瀏覽器會(huì)向服務(wù)器傳送 If-Modified-Since 報(bào)頭,詢(xún)問(wèn)該時(shí)間之后文件是否有被修改過(guò): 

                    If-Modified-Since: Fri, 12 May 2006 18:53:33 GMT

                   
            如果服務(wù)器端的資源沒(méi)有變化,則自動(dòng)返回 HTTP 304 Not Changed.)狀態(tài)碼,內(nèi)容為空,這樣就節(jié)省了傳輸數(shù)據(jù)量。當(dāng)服務(wù)器端代碼發(fā)生改變或者重啟服務(wù)器時(shí),則重新發(fā)出資源,返回和第一次請(qǐng)求時(shí)類(lèi)似。從而保證不向客戶(hù)端重復(fù)發(fā)出資源,也保證當(dāng)服務(wù)器有變化時(shí),客戶(hù)端能夠得到最新的資源。 

                    2)
            什么是”Etag”?

                    HTTP
            協(xié)議規(guī)格說(shuō)明定義ETag被請(qǐng)求變量的實(shí)體值(參見(jiàn) —— 章節(jié) 14.19)。 另一種說(shuō)法是,ETag是一個(gè)可以與Web資源關(guān)聯(lián)的記號(hào)(token)。典型的Web資源可以一個(gè)Web頁(yè),但也可能是JSONXML文檔。服務(wù)器單獨(dú)負(fù)責(zé)判斷記號(hào)是什么及其含義,并在HTTP響應(yīng)頭中將其傳送到客戶(hù)端,以下是服務(wù)器端返回的格式: 

                   ETag: "50b1c1d4f775c61:df3"

                   
            客戶(hù)端的查詢(xún)更新格式是這樣的: 

                    If-None-Match: W/"50b1c1d4f775c61:df3"

                   
            如果ETag沒(méi)改變,則返回狀態(tài)304然后不返回,這也和Last-Modified一樣。本人測(cè)試Etag主要在斷點(diǎn)下載時(shí)比較有用。
                   
                  Last-Modified
            Etags如何幫助提高性能?
                   
            聰明的開(kāi)發(fā)者會(huì)把Last-Modified ETags請(qǐng)求的http報(bào)頭一起使用,這樣可利用客戶(hù)端(例如瀏覽器)的緩存。因?yàn)榉?wù)器首先產(chǎn)生 Last-Modified/Etag標(biāo)記,服務(wù)器可在稍后使用它來(lái)判斷頁(yè)面是否已經(jīng)被修改。本質(zhì)上,客戶(hù)端通過(guò)將該記號(hào)傳回服務(wù)器要求服務(wù)器驗(yàn)證其(客戶(hù)端)緩存。 
                   
            過(guò)程如下:
                            1.
            客戶(hù)端請(qǐng)求一個(gè)頁(yè)面(A)。 
                            2.
            服務(wù)器返回頁(yè)面A,并在給A加上一個(gè)Last-Modified/ETag 
                            3.
            客戶(hù)端展現(xiàn)該頁(yè)面,并將頁(yè)面連同Last-Modified/ETag一起緩存。 
                            4.
            客戶(hù)再次請(qǐng)求頁(yè)面A,并將上次請(qǐng)求時(shí)服務(wù)器返回的Last-Modified/ETag一起傳遞給服務(wù)器。 
                            5.
            服務(wù)器檢查該Last-ModifiedETag,并判斷出該頁(yè)面自上次客戶(hù)端請(qǐng)求之后還未被修改,直接返回響應(yīng)304和一個(gè)空的響應(yīng)體

            posted on 2009-09-04 11:47 肥仔 閱讀(446) 評(píng)論(0)  編輯 收藏 引用 所屬分類(lèi): HTTP & URL

            国产精品亚洲综合专区片高清久久久| 久久99精品久久久久久9蜜桃 | 91精品婷婷国产综合久久| 久久亚洲欧美日本精品| 狠狠色综合久久久久尤物| 欧美精品国产综合久久| 精品永久久福利一区二区| 久久99精品久久久久久秒播| 囯产极品美女高潮无套久久久 | 日韩久久久久中文字幕人妻| 狠狠色丁香久久婷婷综合图片| 久久99热只有频精品8| 区亚洲欧美一级久久精品亚洲精品成人网久久久久 | 伊人久久精品无码av一区| 亚洲国产成人久久综合碰碰动漫3d| 久久综合成人网| 久久99免费视频| 99久久国产精品免费一区二区| 激情五月综合综合久久69| 国产成人久久精品激情| 亚洲AⅤ优女AV综合久久久| 狠色狠色狠狠色综合久久| 久久九九久精品国产免费直播| 久久99久久无码毛片一区二区| 久久99精品久久久久久久久久| 久久亚洲AV成人无码软件| 国内精品免费久久影院| 99久久婷婷国产综合亚洲| 亚洲中文久久精品无码| 国产精品久久久久a影院| 青青热久久国产久精品| 久久久久久国产a免费观看不卡| 狠狠久久亚洲欧美专区 | 久久亚洲天堂| 九九热久久免费视频| 久久99国产一区二区三区| 国内精品久久久久久不卡影院 | 精品久久久久久久国产潘金莲| 国内精品欧美久久精品| 精品久久久久一区二区三区| 日韩精品久久久久久|