100 Continue
3 Y, Y5 D. Z& o* Y+ r8 J/ ]# ]1 q3 a初始的請求已經接受,客戶應當繼續發送請求的其餘部分
1 T9 B4 ^$ H2 Y$ ?2 L" M0 m4 m4 g1 `: H6 u6 X
101 Switching Protocols
! d5 ]$ y7 m0 M: v \3 E' y服務器將遵從客戶的請求轉換到另外一種協議 d5 ^8 s: f' b' b: `3 r
: V7 _- M' W4 B& R3 |# P8 |5 }
200 OK5 I F$ s" `# L6 g* p
一切正常,對GET和POST請求的應答文檔跟在後面
9 _* \2 N+ n4 } {7 z9 k! a+ E& X6 C2 N ^
201 Created6 @# N7 p" l. b4 p
服務器已經創建了文檔,Location頭給出了它的URL。
; d# G4 y1 C& A) n9 o& ~! w- N/ t; X$ ~( [- E" ?
202 Accepted
' v* Q h5 h8 E% \6 }# R! c$ m; y已經接受請求,但處理尚未完成。
& \1 r% O8 b2 ?% b0 ~) Z% e7 Z+ c" o
2 [% z4 L+ N" K. ~( Z. d# x203 Non-Authoritative Information
6 v5 V/ W- t% J文檔已經正常地返回,但一些應答頭可能不正確,因為使用的是文檔的拷貝
a3 o' {* g( X7 D
/ Z! R8 g4 \' R6 e7 p% L3 X204 No Content3 e- L* t! F) L
沒有新文檔,瀏覽器應該繼續顯示原來的文檔。如果用戶定期地玩新頁面,而Servlet可以確定用戶文檔足夠新,這個狀態代碼是很有用的
4 S: z* N# I3 Q/ J3 l9 H1 }+ ~$ g! r. F; F! D8 X
205 Reset Content+ d/ W8 W. @8 Y0 M! Y
沒有新的內容,但瀏覽器應該重置它所顯示的內容。用來強制瀏覽器清除表單輸入內容. @2 a2 C$ _% B
2 |7 V; M9 _$ T2 p9 o! R% \
206 Partial Content
7 Q7 v: ]* D( l7 k' a4 P+ P: H客戶發送了一個帶有Range頭的GET請求,服務器完成了它4 K! Y# ]" h# `4 L2 _4 p
" [7 o. n2 w3 j- @$ F$ }7 X6 A4 L300 Multiple Choices, N' o7 h- ^' J
客戶請求的文檔可以在多個位置找到,這些位置已經在返回的文檔內列出。如果服務器要提出優先選擇,則應該在Location應答頭指明。
& J3 c" w4 b7 `2 M4 M8 ]. g6 F. K/ X( n7 X" B$ L" R! A. k
301 Moved Permanently
) A' Y4 s* E1 p4 p7 u, y客戶請求的文檔在其他地方,新的URL在Location頭中給出,瀏覽器應該自動地訪問新的URL。8 A. A8 I! x8 A6 q. ]5 J0 O: {
5 q, `3 ~+ g$ R/ i6 x
302 Found
" x Y9 m" u8 d& }類似於301,但新的URL應該被視為臨時性的替代,而不是永久性的。
# g0 k. V- @& M& @# A
; V$ t5 l. P5 U: J- L303 See Other
/ n! Z4 p" ^; e3 f: \! ]4 b+ X類似於301/302,不同之處在於,如果原來的請求是POST,Location頭指定的重定向目標文檔應該通過GET提取
8 A. ?2 ?; W# w( D
1 ^) U+ q8 ~1 A& d, D0 \304 Not Modified( o/ z7 {+ U. i/ }; b% h0 y: o. }
客戶端有緩衝的文檔並發出了一個條件性的請求(一般是提供If-Modified-Since頭表示客戶只想比指定日期更新的文檔)。服務器告訴客戶,原來緩衝的文檔還可以繼續使用。% D! a+ ^& V& x8 d
: v& `- F# v4 A# O
305 Use Proxy
3 p0 w1 j/ ^: q! o2 h& U* b" }客戶請求的文檔應該通過Location頭所指明的代理服務器提取
, ^9 p( l3 ?" s" y! d, G$ n6 {" A: A* ]7 e0 X# N2 Q
307 Temporary Redirect0 g, W2 b1 K; n+ }8 {) s* m
和302(Found)相同。許多瀏覽器會錯誤地響應302應答進行重定向,即使原來的請求是 POST,即使它實際上只能在POST請求的應答是303時才能重定向。由於這個原因,HTTP 1.1新增了307,以便更加清除地區分幾個狀態代碼: 當出現303應答時,瀏覽器可以跟隨重定向的GET和POST請求;如果是307應答,則瀏覽器只能跟隨對GET請求的重定向。 ~' l% h; W$ A; Q4 a# X
, ]3 b3 E6 `9 `% p+ Y9 Z
400 Bad Request' x N4 J1 R$ O7 K6 F: l
請求出現語法錯誤。" O& n' s; ?% O! P6 Q0 Y7 ]; G+ L% k
/ P3 ?$ t$ r$ `( w% c( e5 n
401 Unauthorized* H) r1 I. K. M) \. V
客戶試圖未經授權訪問受密碼保護的頁面。應答中會包含一個WWW-Authenticate頭,瀏覽器據此顯示用戶名字/密碼對話框,然後在填寫合適的Authorization頭後再次發出請求。
( j; f& g5 R& o
1 t+ @4 l4 B% s. f; I403 Forbidden
% g. w% e/ x7 r, Q- d資源不可用。
# b+ i' `7 e5 d* p6 M4 P% ]' B
5 N4 J( A/ ?4 y5 P ^, b: E404 Not Found: D) G' ~, X" @! w2 A/ e& l
無法找到指定位置的資源2 b9 k' g" N, q% H" p6 _
* E! r8 I" {" I! m" L; I405 Method Not Allowed( D4 P$ Q. s$ r9 C: F
請求方法(GET、POST、HEAD、Delete、PUT、TRACE等)對指定的資源不適用。
' J/ c4 @( L. S) H2 |2 y, k
3 H" A& n2 j" t8 P0 C. X) j+ K1 {406 Not Acceptable( @ ~8 \( `6 U% `* t8 r5 N' C
指定的資源已經找到,但它的MIME類型和客戶在Accpet頭中所指定的不兼容
) O% L. B; z9 K, j d& b J1 z6 x! `, p
407 Proxy Authentication Required
' ~& n# T* q/ X5 q! c類似於401,表示客戶必須先經過代理服務器的授權。+ e) K% K F" @7 q; n
; [. c( Q0 p4 i1 c/ z4 Z408 Request Timeout9 k$ m2 E* u9 x& T9 |. P/ \# p; m
在服務器許可的等待時間內,客戶一直沒有發出任何請求。客戶可以在以後重複同一請求。
% i% [; I6 U) z Y6 e8 w2 H* v6 h
409 Conflict4 `, U7 E4 B2 B
通常和PUT請求有關。由於請求和資源的當前狀態相衝突,因此請求不能成功。2 h. t. M0 Y) H% X8 M
. h% m! t- v4 \9 A0 p3 @0 r8 H" t410 Gone
0 h4 M' L0 c- o5 ?4 _5 R$ @所請求的文檔已經不再可用,而且服務器不知道應該重定向到哪一個地址。它和404的不同在於,返回407表示文檔永久地離開了指定的位置,而404表示由於未知的原因文檔不可用。
- L# a5 c- k. W3 d# O; o8 P: P+ Q' F) p( p/ |' u6 p2 v
411 Length Required
# [" b" r% P- B& S服務器不能處理請求,除非客戶發送一個Content-Length頭。 s: {* K" f/ F, y9 b; h! J
; w0 V6 [# `# a+ |# V
412 Precondition Failed I/ S! t5 L* I1 b
請求頭中指定的一些前提條件失敗0 |# H+ K" Z9 m/ u0 t
6 M4 [2 i% q8 k9 E3 a+ B413 Request Entity Too Large; l, l# L9 ^; J ~9 r
目標文檔的大小超過服務器當前願意處理的大小。如果服務器認為自己能夠稍後再處理該請求,則應該提供一個Retry-After頭
e1 N+ v6 S% y# h/ Z% u/ {3 ~) c! ~: o. V1 v2 B
414 Request URI Too Long
" E9 k9 I, C0 s4 P; YURI太長$ ~, x; p8 p" ?8 `& t l
1 @9 A, S9 V: u0 k2 ^416 Requested Range Not Satisfiable3 s& k; N5 h' F+ W4 d+ p4 w+ _
服務器不能滿足客戶在請求中指定的Range頭
3 k7 N& Q: }; o4 G: _! ]& o9 R+ e3 x5 c3 M# E I
500 Internal Server Error
+ j; J5 ?6 ]# O: T0 c! z服務器遇到了意料不到的情況,不能完成客戶的請求
& L, P7 o, ~, P2 O" m. ]9 \ D# ]7 e4 s1 i* o. o( }9 q7 G2 y
501 Not Implemented7 s5 H6 w! }. `5 L7 X! g
服務器不支持實現請求所需要的功能。例如,客戶發出了一個服務器不支持的PUT請求: X' S& o1 @) D! W
! O. e4 R; u9 t( D3 q' E Y502 Bad Gateway: N" s& _4 P# e
服務器作為網關或者代理時,為了完成請求訪問下一個服務器,但該服務器返回了非法的應答
8 W, y; D' C8 k: T0 [
# x8 {% X+ c8 [* v( u503 Service Unavailable9 ^8 C/ w5 C' N9 q
服務器由於維護或者負載過重未能應答。例如,Servlet可能在數據庫連接池已滿的情況下返回503。服務器返回503時可以提供一個Retry-After頭
2 l* K5 |, O- \* O, k6 Q' \. l `& K, }+ F
504 Gateway Timeout
: U; _" [6 b8 z6 y/ k [* Y$ _: ^! G由作為代理或網關的服務器使用,表示不能及時地從遠程服務器獲得應答/ x$ b2 @. i8 L; \4 \& H
0 [; w/ l* m' A# `: B/ }7 Z# w& D
505 HTTP Version Not Supported
0 t' M" L8 ~6 K6 I" R服務器不支持請求中所指明的HTTP版本 |
|