天天看點

全網最全JavaWeb服務端用戶端HTTP響應碼(下)用戶端響應服務端響應

用戶端響應

400 Bad Request

  • 語義有誤,目前請求無法被伺服器了解。除非進行修改,否則用戶端不應該重複送出這個請求
  • 請求參數有誤

401 Unauthorized

目前請求需要使用者驗證。該響應必須包含一個适用于被請求資源的 WWW-Authenticate 資訊頭用以詢問使用者資訊。用戶端可以重複送出一個包含恰當的 Authorization 頭資訊的請求。如果目前請求已經包含了 Authorization 證書,那麼401響應代表着伺服器驗證已經拒絕了那些證書。如果401響應包含了與前一個響應相同的身份驗證詢問,且浏覽器已經至少嘗試了一次驗證,那麼浏覽器應當向使用者展示響應中包含的實體資訊,因為這個實體資訊中可能包含了相關診斷資訊。

402 Payment Required

此響應碼保留以便将來使用,創造此響應碼的最初目的是用于數字支付系統,然而現在并未使用。

403 Forbidden

伺服器已經了解請求,但是拒絕執行它。與 401 響應不同的是,身份驗證并不能提供任何幫助,而且這個請求也不應該被重複送出。如果這不是一個 HEAD 請求,而且伺服器希望能夠講清楚為何請求不能被執行,那麼就應該在實體内描述拒絕的原因。當然伺服器也可以傳回一個 404 響應,假如它不希望讓用戶端獲得任何資訊。

404 Not Found

請求失敗,請求所希望得到的資源未被在伺服器上發現。沒有資訊能夠告訴使用者這個狀況到底是暫時的還是永久的。假如伺服器知道情況的話,應當使用410狀态碼來告知舊資源因為某些内部的配置機制問題,已經永久的不可用,而且沒有任何可以跳轉的位址。404這個狀态碼被廣泛應用于當伺服器不想揭示到底為何請求被拒絕或者沒有其他适合的響應可用的情況下。

405 Method Not Allowed

請求行中指定的請求方法不能被用于請求相應的資源。該響應必須傳回一個Allow 頭資訊用以表示出目前資源能夠接受的請求方法的清單。 鑒于 PUT,DELETE 方法會對伺服器上的資源進行寫操作,因而絕大部分的網頁伺服器都不支援或者在預設配置下不允許上述請求方法,對于此類請求均會傳回405錯誤。

406 Not Acceptable

請求的資源的内容特性無法滿足請求頭中的條件,因而無法生成響應實體。

407 Proxy Authentication Required

與401響應類似,隻不過用戶端必須在代理伺服器上進行身份驗證。代理伺服器必須傳回一個 Proxy-Authenticate 用以進行身份詢問。用戶端可以傳回一個 Proxy-Authorization 資訊頭用以驗證。

408 Request Timeout

請求逾時。用戶端沒有在伺服器預備等待的時間内完成一個請求的發送。用戶端可以随時再次送出這一請求而無需進行任何更改。

409 Conflict

由于和被請求的資源的目前狀态之間存在沖突,請求無法完成。這個代碼隻允許用在這樣的情況下才能被使用:使用者被認為能夠解決沖突,并且會重新送出新的請求。該響應應當包含足夠的資訊以便使用者發現沖突的源頭。

410 Gone

被請求的資源在伺服器上已經不再可用,而且沒有任何已知的轉發位址。這樣的狀況應當被認為是永久性的。如果可能,擁有連結編輯功能的用戶端應當在獲得使用者許可後删除所有指向這個位址的引用。如果伺服器不知道或者無法确定這個狀況是否是永久的,那麼就應該使用 404 狀态碼。除非額外說明,否則這個響應是可緩存的。

411 Length Required

伺服器拒絕在沒有定義 Content-Length 頭的情況下接受請求。在添加了表明請求消息體長度的有效 Content-Length 頭之後,用戶端可以再次送出該請求。

412 Precondition Failed

伺服器在驗證在請求的頭字段中給出先決條件時,沒能滿足其中的一個或多個。這個狀态碼允許用戶端在擷取資源時在請求的元資訊(請求頭字段資料)中設定先決條件,以此避免該請求方法被應用到其希望的内容以外的資源上。

413 Payload Too Large

伺服器拒絕處理目前請求,因為該請求送出的實體資料大小超過了伺服器願意或者能夠處理的範圍。此種情況下,伺服器可以關閉連接配接以免用戶端繼續發送此請求。如果這個狀況是臨時的,伺服器應當傳回一個 Retry-After 的響應頭,以告知用戶端可以在多少時間以後重新嘗試。

414 URI Too Long

請求的URI 長度超過了伺服器能夠解釋的長度,是以伺服器拒絕對該請求提供服務。這比較少見,通常的情況包括:本應使用POST方法的表單送出變成了GET方法,導緻查詢字元串(Query String)過長。

415 Unsupported Media Type

對于目前請求的方法和所請求的資源,請求中送出的實體并不是伺服器中所支援的格式,是以請求被拒絕。

416 Range Not Satisfiable

如果請求中包含了 Range 請求頭,并且 Range 中指定的任何資料範圍都與目前資源的可用範圍不重合,同時請求中又沒有定義 If-Range 請求頭,那麼伺服器就應當傳回416狀态碼。

417 Expectation Failed

此響應代碼意味着伺服器無法滿足 Expect 請求标頭字段訓示的期望值。

418 I’m a teapot

伺服器拒絕嘗試用 “茶壺沖泡咖啡”。

421 Misdirected Request

該請求針對的是無法産生響應的伺服器。 這可以由伺服器發送,該伺服器未配置為針對包含在請求 URI 中的方案和權限的組合産生響應。

422 Unprocessable Entity (WebDAV)

請求格式良好,但由于語義錯誤而無法遵循。

423 Locked (WebDAV)

正在通路的資源被鎖定。

424 Failed Dependency (WebDAV)

由于先前的請求失敗,是以此次請求失敗。

425 Too Early

伺服器不願意冒着風險去處理可能重播的請求。

426 Upgrade Required

伺服器拒絕使用目前協定執行請求,但可能在客戶機更新到其他協定後願意這樣做。 伺服器在 426 響應中發送 Upgrade 頭以訓示所需的協定。

428 Precondition Required

原始伺服器要求該請求是有條件的。 旨在防止“丢失更新”問題,即用戶端擷取資源狀态,修改該狀态并将其傳回伺服器,同時第三方修改伺服器上的狀态,進而導緻沖突。

429 Too Many Requests

使用者在給定的時間内發送了太多請求(“限制請求速率”)。

StatusTooManyRequests              = 429 // RFC 6585, 4      

431 Request Header Fields Too Large

伺服器不願意處理請求,因為它的 請求頭字段太大( Request Header Fields Too Large)。 請求可以在減小請求頭字段的大小後重新送出。

451 Unavailable For Legal Reasons

使用者請求非法資源,例如:由政府審查的網頁。

服務端響應

500 Internal Server Error

伺服器遇到了不知道如何處理的情況

501 Not Implemented

此請求方法不被伺服器支援且無法被處理。隻有GET和HEAD是要求伺服器支援的,它們必定不會傳回此錯誤代碼

502 Bad Gateway

伺服器作為網關需要得到一個處理這個請求的響應,但是得到一個錯誤的響應

503 Service Unavailable

伺服器沒有準備好處理請求。 常見原因是伺服器因維護或重載而停機。 請注意,與此響應一起,應發送解釋問題的使用者友好頁面。 這個響應應該用于臨時條件和 Retry-After:如果可能的話,HTTP頭應該包含恢複服務之前的估計時間。 網站管理者還必須注意與此響應一起發送的與緩存相關的标頭,因為這些臨時條件響應通常不應被緩存

504 Gateway Timeout

當伺服器作為網關,不能及時得到響應時傳回此錯誤代碼

505 HTTP Version Not Supported

伺服器不支援請求中所使用的HTTP協定版本

506 Variant Also Negotiates

伺服器有一個内部配置錯誤:對請求的透明内容協商導緻循環引用。

507 Insufficient Storage

伺服器有内部配置錯誤:所選的變體資源被配置為參與透明内容協商本身,是以不是協商過程中的适當端點。

508 Loop Detected (WebDAV)

伺服器在處理請求時檢測到無限循環

510 Not Extended

用戶端需要對請求進一步擴充,伺服器才能實作它。伺服器會回複用戶端發出擴充請求所需的所有資訊

511 Network Authentication Required

511 狀态碼訓示用戶端需要進行身份驗證才能獲得網絡通路權限。

繼續閱讀