請求頭字段的具體含義
Accept:瀏覽器可接受的MIME類型。
Accept-Charset:瀏覽器可接受的字符集。
Accept-:瀏覽器能夠進(jìn)行解碼的數(shù)據(jù)編碼方式,比如gzip。
Accept-:瀏覽器所希望的語言種類,當(dāng)服務(wù)器能夠提供一種以上的語言版本時(shí)要用到。
:授權(quán)信息,通常出現(xiàn)在對服務(wù)器發(fā)送的WWW-頭的應(yīng)答中。
:表示是否需要持久連接。如果Servlet看到這里的值為“Keep-Alive”,或者看到請求使用的是HTTP 1.1(HTTP 1.1默認(rèn)進(jìn)行持久連接),它就可以利用持久連接的優(yōu)點(diǎn),當(dāng)頁面包含多個元素時(shí)(例如Applet,圖片),顯著地減少下載所需要的時(shí)間。要實(shí)現(xiàn)這一點(diǎn),Servlet需要在應(yīng)答中發(fā)送一個Content-Length頭,最簡單的實(shí)現(xiàn)方法是:先把內(nèi)容寫入m,然后在正式寫出內(nèi)容之前計(jì)算它的大小。
Content-Length:表示請求消息正文的長度。
Cookie:設(shè)置cookie,這是最重要的請求頭信息之一
From:請求發(fā)送者的email地址,由一些特殊的Web客戶程序使用,瀏覽器不會用到它。
Host:初始URL中的主機(jī)和端口。
If--Since:只有當(dāng)所請求的內(nèi)容在指定的日期之后又經(jīng)過修改才返回它,否則返回304“Not ”應(yīng)答。
Pragma:指定“no-cache”值表示服務(wù)器必須返回一個刷新后的文檔,即使它是代理服務(wù)器而且已經(jīng)有了頁面的本地拷貝。
Referer:包含一個URL,用戶從該URL代表的頁面出發(fā)訪問當(dāng)前請求的頁面。
User-Agent:瀏覽器類型,如果Servlet返回的內(nèi)容與瀏覽器類型有關(guān)則該值非常有用。
UA-Pixels,UA-Color,UA-OS,UA-CPU:由某些版本的IE瀏覽器所發(fā)送的非標(biāo)準(zhǔn)的請求頭,表示屏幕大小、顏色深度、操作系統(tǒng)和CPU
響應(yīng)碼分五種類型,由它們的第一位數(shù)字表示:
1xx:信息,請求收到,繼續(xù)處理
2xx:成功,行為被成功地接受、理解和采納
3xx:重定向,為了完成請求,必須進(jìn)一步執(zhí)行的動作
4xx:客戶端錯誤,請求包含語法錯誤或者請求無法實(shí)現(xiàn)
5xx:服務(wù)器錯誤,服務(wù)器不能實(shí)現(xiàn)一種明顯無效的請求
狀態(tài)代碼 狀態(tài)信息 含義
100 初始的請求已經(jīng)接受,客戶應(yīng)當(dāng)繼續(xù)發(fā)送請求的其余部分。(HTTP 1.1新)
101 服務(wù)器將遵從客戶的請求轉(zhuǎn)換到另外一種協(xié)議(HTTP 1.1新
200 OK 一切正常,對GET和POST請求的應(yīng)答文檔跟在后面。
201 Created 服務(wù)器已經(jīng)創(chuàng)建了文檔,頭給出了它的URL。
202 已經(jīng)接受請求,但處理尚未完成。
203 Non- 文檔已經(jīng)正常地返回,但一些應(yīng)答頭可能不正確,因?yàn)槭褂玫氖俏臋n的拷貝(HTTP 1.1新)。
204 No Content 沒有新文檔,瀏覽器應(yīng)該繼續(xù)顯示原來的文檔。
205 Reset Content 沒有新的內(nèi)容,但瀏覽器應(yīng)該重置它所顯示的內(nèi)容。用來強(qiáng)制瀏覽器清除表單輸入內(nèi)容(HTTP 1.1新)。
206 Partial Content 客戶發(fā)送了一個帶有Range頭的GET請求,服務(wù)器完成了它(HTTP 1.1新)。
300 Choices 客戶請求的文檔可以在多個位置找到,這些位置已經(jīng)在返回的文檔內(nèi)列出。如果服務(wù)器要提出優(yōu)先選擇,則應(yīng)該在應(yīng)答頭指明。
301 Moved 客戶請求的文檔在其他地方,新的URL在頭中給出,瀏覽器應(yīng)該自動地訪問新的URL。
302 Found 類似于301,但新的URL應(yīng)該被視為臨時(shí)性的替代,而不是永久性的。注意,在HTTP1.0中對應(yīng)的狀態(tài)信息是“Moved ”,出現(xiàn)該狀態(tài)代碼時(shí),瀏覽器能夠自動訪問新的URL,因此它是一個很有用的狀態(tài)代碼。注意這個狀態(tài)代碼有時(shí)候可以和301替換使用。例如,如果瀏覽器錯誤地請求~user(缺少了后面的斜杠),有的服務(wù)器返回301,有的則返回302。嚴(yán)格地說,我們只能假定只有當(dāng)原來的請求是GET時(shí)瀏覽器才會自動重定向。請參見307。
303 See Other 類似于301/302,不同之處在于,如果原來的請求是POST,頭指定的重定向目標(biāo)文檔應(yīng)該通過GET提取(HTTP 1.1新)。
304 Not 客戶端有緩沖的文檔并發(fā)出了一個條件性的請求(一般是提供If--Since頭表示客戶只想比指定日期更新的文檔)。服務(wù)器告訴客戶,原來緩沖的文檔還可以繼續(xù)使用。
305 Use Proxy 客戶請求的文檔應(yīng)該通過頭所指明的代理服務(wù)器提取(HTTP 1.1新)。
307 和302(Found)相同。許多瀏覽器會錯誤地響應(yīng)302應(yīng)答進(jìn)行重定向,即使原來的請求是POST,即使它實(shí)際上只能在POST請求的應(yīng)答是303時(shí)才能重定向。由于這個原因,HTTP 1.1新增了307,以便更加清除地區(qū)分幾個狀態(tài)代碼:當(dāng)出現(xiàn)303應(yīng)答時(shí),瀏覽器可以跟隨重定向的GET和POST請求;如果是307應(yīng)答,則瀏覽器只能跟隨對GET請求的重定向。(HTTP 1.1新)
400 Bad Request 請求出現(xiàn)語法錯誤。
401 客戶試圖未經(jīng)授權(quán)訪問受密碼保護(hù)的頁面。應(yīng)答中會包含一個WWW-頭,瀏覽器據(jù)此顯示用戶名字/密碼對話框,然后在填寫合適的頭后再次發(fā)出請求。
403 資源不可用。服務(wù)器理解客戶的請求,但拒絕處理它。通常由于服務(wù)器上文件或目錄的權(quán)限設(shè)置導(dǎo)致。
404 Not Found 無法找到指定位置的資源。這也是一個常用的應(yīng)答,
405 Method Not Allowed 請求方法(GET、POST、HEAD、DELETE、PUT、TRACE等)對指定的資源不適用。(HTTP 1.1新)
406 Not 指定的資源已經(jīng)找到,但它的MIME類型和客戶在Accpet頭中所指定的不兼容(HTTP 1.1新)。
407 Proxy 類似于401,表示客戶必須先經(jīng)過代理服務(wù)器的授權(quán)。(HTTP 1.1新)
408 Request Timeout 在服務(wù)器許可的等待時(shí)間內(nèi),客戶一直沒有發(fā)出任何請求。客戶可以在以后重復(fù)同一請求。(HTTP 1.1新)
409 通常和PUT請求有關(guān)。由于請求和資源的當(dāng)前狀態(tài)相沖突,因此請求不能成功。(HTTP 1.1新)
410 Gone 所請求的文檔已經(jīng)不再可用,而且服務(wù)器不知道應(yīng)該重定向到哪一個地址。它和404的不同在于,返回407表示文檔永久地離開了指定的位置,而404表示由于未知的原因文檔不可用。(HTTP 1.1新)
411 Length 服務(wù)器不能處理請求,除非客戶發(fā)送一個Content-Length頭。(HTTP 1.1新)
412 Failed 請求頭中指定的一些前提條件失敗(HTTP 1.1新)。
413 Request Entity Too Large 目標(biāo)文檔的大小超過服務(wù)器當(dāng)前愿意處理的大小。如果服務(wù)器認(rèn)為自己能夠稍后再處理該請求,則應(yīng)該提供一個Retry-After頭(HTTP 1.1新)。
414 Request URI Too Long URI太長(HTTP 1.1新)。
416 Range Not 服務(wù)器不能滿足客戶在請求中指定的Range頭。(HTTP 1.1新)
500 Server Error 服務(wù)器遇到了意料不到的情況,不能完成客戶的請求。
501 Not 服務(wù)器不支持實(shí)現(xiàn)請求所需要的功能。例如,客戶發(fā)出了一個服務(wù)器不支持的PUT請求。
502 Bad Gateway 服務(wù)器作為網(wǎng)關(guān)或者代理時(shí),為了完成請求訪問下一個服務(wù)器,但該服務(wù)器返回了非法的應(yīng)答。
503 Service 服務(wù)器由于維護(hù)或者負(fù)載過重未能應(yīng)答。
504 Gateway Timeout 由作為代理或網(wǎng)關(guān)的服務(wù)器使用,表示不能及時(shí)地從遠(yuǎn)程服務(wù)器獲得應(yīng)答。(HTTP 1.1新)