日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

實(shí)體首部字段,內(nèi)容編碼的重要性!

 美顏誘惑 2022-05-20 發(fā)布于河北

實(shí)體首部字段

實(shí)體首部字段是包含在請求報(bào)文和響應(yīng)報(bào)文中的實(shí)體部分所使用的首部,用于補(bǔ)充內(nèi)容的更新時(shí)間等與實(shí)體相關(guān)的信息。

Allow

首部字段Allow用于通知客戶端能夠支持Request-URI指定資源的所有HTTP方法。當(dāng)服務(wù)器接收到不支持的HTTP方法時(shí),會(huì)以狀態(tài)碼405 Method Not Allowed作為響應(yīng)返回。與此同時(shí),還會(huì)把所有能支持的HTTP方法寫入首部字段Allow后返回。

Content-Encoding

首部字段Content-Encoding會(huì)告知客戶端服務(wù)器對實(shí)體的主體部分選用的內(nèi)容編碼方式。內(nèi)容編碼是指在不丟失實(shí)體信息的前提下所進(jìn)行的壓縮。

主要采用以下4種內(nèi)容編碼的方式。

Content-Language

首部字段Content-Language會(huì)告知客戶端,實(shí)體主體使用的自然語言(指中文或英文等語言)。

Content-Length

首部字段Content-Length表明了實(shí)體主體部分的大?。▎挝皇亲止?jié))。對實(shí)體主體進(jìn)行內(nèi)容編碼傳輸時(shí),不能再使用Content-Length首部字段。由于實(shí)體主體大小的計(jì)算方法略微復(fù)雜,所以在此不再展開。

Content-Location

首部字段Content-Location給出與報(bào)文主體部分相對應(yīng)的URI。和首部字段Location不同,Content-Location表示的是報(bào)文主體返回資源對應(yīng)的URI。

比如,對于使用首部字段Accept-Language的服務(wù)器驅(qū)動(dòng)型請求,當(dāng)返回的頁面內(nèi)容與實(shí)際請求的對象不同時(shí),首部字段Content-Location內(nèi)會(huì)寫明URI。(訪問http://www./返回的對象卻是http://www./index-ja.html等類似情況)

Content-MD5

首部字段Content-MD5是一串由MD5算法生成的值,其目的在于檢查報(bào)文主體在傳輸過程中是否保持完整,以及確認(rèn)傳輸?shù)竭_(dá)。

對報(bào)文主體執(zhí)行MD5算法獲得的128位二進(jìn)制數(shù),再通過Base64編碼后將結(jié)果寫入Content-MD5字段值。由于HTTP首部無法記錄二進(jìn)制值,所以要通過Base64編碼處理。為確保報(bào)文的有效性,作為接收方的客戶端會(huì)對報(bào)文主體再執(zhí)行一次相同的MD5算法。計(jì)算出的值與字段值作比較后,即可判斷出報(bào)文主體的準(zhǔn)確性。

采用這種方法,對內(nèi)容上的偶發(fā)性改變是無從查證的,也無法檢測出惡意篡改。其中一個(gè)原因在于,內(nèi)容如果能夠被篡改,那么同時(shí)意味著Content-MD5也可重新計(jì)算然后被篡改。所以處在接收階段的客戶端是無法意識到報(bào)文主體以及首部字段Content-MD5是已經(jīng)被篡改過的。

Content-Range

針對范圍請求,返回響應(yīng)時(shí)使用的首部字段Content-Range,能告知客戶端作為響應(yīng)返回的實(shí)體的哪個(gè)部分符合范圍請求。字段值以字節(jié)為單位,表示當(dāng)前發(fā)送部分及整個(gè)實(shí)體大小。

Content-Type

首部字段Content-Type說明了實(shí)體主體內(nèi)對象的媒體類型。和首部字段Accept一樣,字段值用type/subtype形式賦值。

參數(shù)charset使用iso-8859-1euc-jp等字符集進(jìn)行賦值。

Expires

首部字段Expires會(huì)將資源失效的日期告知客戶端。緩存服務(wù)器在接收到含有首部字段Expires的響應(yīng)后,會(huì)以緩存來應(yīng)答請求,在Expires字段值指定的時(shí)間之前,響應(yīng)的副本會(huì)一直被保存。當(dāng)超過指定的時(shí)間后,緩存服務(wù)器在請求發(fā)送過來時(shí),會(huì)轉(zhuǎn)向源服務(wù)器請求資源。

源服務(wù)器不希望緩存服務(wù)器對資源緩存時(shí),最好在Expires字段內(nèi)寫入與首部字段Date相同的時(shí)間值。

但是,當(dāng)首部字段Cache-Control有指定max-age指令時(shí),比起首部字段Expires,會(huì)優(yōu)先處理max-age指令。

Last-Modified

首部字段Last-Modified指明資源最終修改的時(shí)間。一般來說,這個(gè)值就是Request-URI指定資源被修改的時(shí)間。但類似使用CGI腳本進(jìn)行動(dòng)態(tài)數(shù)據(jù)處理時(shí),該值有可能會(huì)變成數(shù)據(jù)最終修改時(shí)的時(shí)間。

    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多