HTTP回應狀態代碼指示特定的HTTP請求是否已成功完成,回答分為五類:
- 資訊回應(100–199),
- 成功回應(200–299),
- 重定向(300–399),
- 客戶端錯誤(400–499),
- 和服務器錯誤(500–599),
1、Information responses
100 Continue
這個臨時回應表示到目前為止一切正常,客戶端應該繼續請求,如果請求已經完成,則忽略回應,
101 Switching Protocol
此代碼作為對來自客戶端的升級請求標頭的回應而發送,并指示服務器正在切換到的協議,
102 Processing (WebDAV)
此代碼表示服務器已收到并正在處理請求,但還沒有可用的回應,
103 Early Hints
此狀態代碼主要用于鏈接頭,允許用戶代理在服務器準備回應時開始預加載資源,
2、Successful responses
200 OK
請求已成功,成功的意義取決于HTTP方法:
GET:資源已被獲取并在訊息體中傳輸,
HEAD:物體頭在訊息體中,
PUT或POST:描述操作結果的資源在訊息體中傳輸,
TRACE:訊息體包含服務器接收到的請求訊息,
201 Created
請求已成功,并因此創建了新資源,這通常是POST請求或某些PUT請求之后發送的回應,
202 Accepted
已收到請求,但尚未采取行動,它是不確定的,因為在HTTP中沒有辦法稍后發送一個異步回應來指示請求的結果,它適用于另一個行程或服務器處理請求的情況,或者用于批處理,
203 Non-Authoritative Information
此回應代碼表示回傳的元資訊與從源服務器獲得的不完全相同,而是從本地或第三方副本收集的,這主要用于另一個資源的鏡像或備份,除該特定情況外,“200OK”回應優先于此狀態,
204 No Content
沒有要為此請求發送的內容,但標頭可能有用,用戶代理可以用新的頭更新它為此資源快取的頭,
205 Reset Content
當從客戶端發送范圍標頭以僅請求部分資源時,將使用此回應代碼
206 Partial Content
當從客戶端發送范圍標頭以僅請求部分資源時,將使用此回應代碼
207 Multi-Status (WebDAV)
傳遞有關多個資源的資訊,用于可能需要多個狀態代碼的情況,
208 Already Reported (WebDAV)
在a內部使用<達夫:propstat>元素,以避免重復列舉同一集合的多個系結的內部成員,
226 IM Used (HTTP Delta encoding)
服務器已完成對資源的GET請求,回應是應用于當前實體的一個或多個實體操作結果的表示,
3、Redirection messages
300 Multiple Choice
請求有多個可能的回應,用戶代理或用戶應選擇其中一個,(沒有選擇其中一個回應的標準化方法,但是建議使用指向這些可能性的HTML鏈接,以便用戶選擇,)
301 Moved Permanently
請求資源的URL已永久更改,新的URL在回應中給出,
302 Found
此回應代碼表示請求資源的URI已臨時更改,將來可能會對URI進行進一步的更改,因此,客戶機在以后的請求中應該使用相同的URI
303 See Other
服務器發送此回應以指示客戶端通過get請求在另一個URI處獲取請求的資源
304 Not Modified
這用于快取目的,它告訴客戶機回應尚未修改,因此客戶機可以繼續使用相同的快取版本的回應,
305 Use Proxy
在以前版本的HTTP規范中定義的,用于指示請求的回應必須由代理訪問,由于涉及代理的帶內配置的安全問題,它已被棄用,
306 unused
此回應代碼不再使用;它只是保留的,它在以前版本的HTTP/1.1規范中使用過,
307 Temporary Redirect
服務器發送此回應以指示客戶機使用與前一個請求中使用的方法相同的方法從另一個URI獲取請求的資源,這與302找到的HTTP回應代碼具有相同的語意,只是用戶代理不能更改所使用的HTTP方法:如果在第一個請求中使用了POST,則必須在第二個請求中使用POST,
308 Permanent Redirect
這意味著資源現在永久位于另一個URI上,由Location:HTTP回應頭指定,這與301移動的永久HTTP回應代碼具有相同的語意,只是用戶代理不能更改所使用的HTTP方法:如果在第一個請求中使用了POST,則必須在第二個請求中使用POST,
4、Client error responses
400 Bad Request
由于語法無效,服務器無法理解請求,
401 Unauthorized
“未經授權的回應”在語意上是指“未經授權的回應”,也就是說,客戶機必須對自己進行身份驗證才能獲得請求的回應,
402 Payment Required
此回應代碼保留供將來使用,創建此代碼的最初目的是將其用于數字支付系統,但是此狀態代碼很少使用,并且不存在標準約定,
403 Forbidden
客戶端沒有對內容的訪問權限;也就是說,它是未經授權的,因此服務器拒絕提供所請求的資源,與401不同的是,服務器知道客戶機的身份,
404 Not Found
服務器找不到請求的資源,在瀏覽器中,這意味著無法識別URL,在API中,這也意味著端點是有效的,但資源本身不存在,服務器也可以發送此回應而不是403,以向未經授權的客戶端隱藏資源的存在,這個回應代碼可能是最著名的一個,因為它經常出現在web上
405 Method Not Allowed
服務器知道請求方法,但已被禁用,無法使用,例如,API可能禁止洗掉資源,兩個必需的方法GET和HEAD決不能被禁用,并且不應回傳此錯誤代碼,
406 Not Acceptable
當web服務器在執行服務器驅動的內容協商后,未找到任何符合用戶代理給定條件的內容時,將發送此回應,
407 Proxy Authentication Required
這與401類似,但身份驗證需要由代理完成,
408 Request Timeout
此回應由一些服務器在空閑連接上發送,即使客戶機之前沒有任何請求,這意味著服務器要關閉這個未使用的連接,由于一些瀏覽器(如Chrome、firefox27+或IE9)使用HTTP預連接機制來加快瀏覽速度,所以使用這種回應的次數要多得多,還要注意,有些服務器只是關閉連接而不發送此訊息
409 Conflict
當請求與服務器的當前狀態沖突時發送此回應,
410 Gone
當請求的內容已從服務器中永久洗掉且沒有轉發地址時,將發送此回應,客戶機應洗掉其快取和到資源的鏈接,HTTP規范打算將此狀態代碼用于“限時促銷服務”,API不應該被迫用此狀態代碼指示已洗掉的資源,
411 Length Required
服務器拒絕了請求,因為未定義內容長度標頭欄位,而服務器需要它,
412 Precondition Failed
客戶機在其標頭中指出了服務器不滿足的先決條件,
413 Payload Too Large
請求物體大于服務器定義的限制;服務器可能會關閉連接或回傳重試后標頭欄位,
414 URI Too Long
客戶端請求的URI比服務器愿意解釋的長
415 Unsupported Media Type
服務器不支持請求資料的媒體格式,因此服務器拒絕該請求,
416 Range Not Satisfiable
無法實作請求中的range header欄位指定的范圍;該范圍可能超出了目標URI的資料大小
5、Server error responses
500 Internal Server Error
服務器遇到了不知道如何處理的情況,
501 Not Implemented
服務器不支持請求方法,因此無法處理,服務器需要支持的唯一方法(因此不能回傳此代碼)是GET和HEAD,
502 Bad Gateway
此錯誤回應意味著服務器作為網關來獲取處理請求所需的回應時,得到的回應無效,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/174025.html
標籤:其他
