網路程式設計 HTTP的訊息頭和響應頭的介紹

2021-07-30 01:40:30 字數 4267 閱讀 3060

ps:第一行是請求行:請求方式 + 資源名稱 + http協議版本號,另外請求頭只是給服務端的乙個 資訊而已或者說乙個簡單,至於怎麼處理,還是由服務端來決定的!

解釋示例

accept

指定客戶端能夠接收的內容型別

accept: text/plain, text/html

accept-charset

瀏覽器可以接受的字元編碼集。

accept-charset: iso-8859-5

accept-encoding

指定瀏覽器可以支援的web伺服器返回內容壓縮編碼型別。

accept-encoding: compress, gzip

accept-language

瀏覽器可接受的語言

accept-language: en,zh

accept-ranges

可以請求網頁實體的乙個或者多個子範圍字段

accept-ranges: bytes

authorization

http授權的授權證書

authorization: basic qwxhzgrpbjpvcgvuihnlc2ftzq==

cache-control

指定請求和響應遵循的快取機制

cache-control: no-cache

connection

表示是否需要持久連線。(http 1.1預設進行持久連線)

connection: close

cookie

http請求傳送時,會把儲存在該請求網域名稱下的所有cookie值一起傳送給web伺服器。

cookie: $version=1; skin=new;

content-length

請求的內容長度

content-length: 348

content-type

請求的與實體對應的mime資訊

date

請求傳送的日期和時間

date: tue, 15 nov 2010 08:12:31 gmt

expect

請求的特定的伺服器行為

expect: 100-continue

from

發出請求的使用者的email

from: [email protected]

host

指定請求的伺服器的網域名稱和埠號

host: www.zcmhi.com

if-match

只有請求內容與實體相匹配才有效

if-match: "737060cd8c284d8af7ad3082f209582d"

if-modified-since

如果請求的部分在指定時間之後被修改則請求成功,未被修改則返回304**

if-modified-since: sat, 29 oct 2010 19:43:31 gmt

if-none-match

如果內容未改變返回304**,引數為伺服器先前傳送的etag,與伺服器回應的etag比較判斷是否改變

if-none-match: "737060cd8c284d8af7ad3082f209582d"

if-range

如果實體未改變,伺服器傳送客戶端丟失的部分,否則傳送整個實體。引數也為etag

if-range: "737060cd8c284d8af7ad3082f209582d"

if-unmodified-since

只在實體在指定時間之後未被修改才請求成功

if-unmodified-since: sat, 29 oct 2010 19:43:31 gmt

max-forwards

限制資訊通過**和閘道器傳送的時間

max-forwards: 10

pragma

用來包含實現特定的指令

pragma: no-cache

proxy-authorization

連線到**的授權證書

proxy-authorization: basic qwxhzgrpbjpvcgvuihnlc2ftzq==

range

只請求實體的一部分,指定範圍

range: bytes=500-999

referer

先前網頁的位址,當前請求網頁緊隨其後,即來路

referer:

te客戶端願意接受的傳輸編碼,並通知伺服器接受接受尾加頭資訊

te: trailers,deflate;q=0.5

upgrade

向伺服器指定某種傳輸協議以便伺服器進行轉換(如果支援)

user-agent的內容包含發出請求的使用者資訊

user-agent: mozilla/5.0 (linux; x11)

via通知中間閘道器或**伺服器位址,通訊協議

via: 1.0 fred, 1.1 nowhere.com (apache/1.1)

warning

關於訊息實體的警告資訊

warn: 199 miscellaneous warning

ps:第一行依次是:協議版本號 狀態碼 302表示這裡沒有,但是另外乙個地方有,通過location頁面重定向了

解釋示例

accept-ranges

表明伺服器是否支援指定範圍請求及哪種型別的分段請求

accept-ranges: bytes

age從原始伺服器到**快取形成的估算時間(以秒計,非負)

age: 12

allow

對某網路資源的有效的請求行為,不允許則返回405

allow: get, head

cache-control

告訴所有的快取機制是否可以快取及哪種型別

cache-control: no-cache

content-encoding

web伺服器支援的返回內容壓縮編碼型別

content-encoding: gzip

content-language

響應體的語言

content-language: en,zh

content-length

響應體的長度

content-length: 348

content-location

請求資源可替代的備用的另一位址

content-location: /index.htm

content-md5

返回資源的md5校驗值

content-md5: q2hly2sgsw50zwdyaxr5iq==

content-range

在整個返回體中本部分的位元組位置

content-range: bytes 21010-47021/47022

content-type

返回內容的mime型別

content-type: text/html; charset=utf-8

date

原始伺服器訊息發出的時間

date: tue, 15 nov 2010 08:12:31 gmt

etag

請求變數的實體標籤的當前值

etag: "737060cd8c284d8af7ad3082f209582d"

expires

響應過期的日期和時間

expires: thu, 01 dec 2010 16:00:00 gmt

last-modified

請求資源的最後修改時間

last-modified: tue, 15 nov 2010 12:45:26 gmt

location

用來重定向接收方到非請求url的位置來完成請求或標識新的資源

location:

pragma

包括實現特定的指令,它可應用到響應鏈上的任何接收方

pragma: no-cache

proxy-authenticate

它指出認證方案和可應用到**的該url上的引數

proxy-authenticate: basic

http請求訊息頭與響應訊息頭

請求頭 accept 客戶機通過這個頭,告訴伺服器,它支援哪些資料型別 accept charset 客戶機通過這個頭,告訴伺服器,它支援的編碼 accept encoding 客戶機通過這個頭,告訴伺服器,支援哪種資料壓縮格式 accept language 客戶機採用的是哪個語言 host 客戶...

http響應訊息頭詳解

定時重新整理refresh使用 2建立檔案輸入流 fileinputstream fis new fileinputstream path 做乙個緩衝位元組陣列 byte buff new byte 1024 int len 0 表示實際每次讀取了多個個位元組 outputstream os res...

Http訊息頭中常用的請求頭和響應頭

常用標準請求頭欄位 host 設定伺服器網域名稱和tcp埠號,如果使用的是服務請求標準埠號,埠號可以省略 host en.wikipedia.org 8080 host en.wikipedia.org if match 設定客戶端的etag,當時客戶端etag和伺服器生成的etag一致才執行,適用...