? REST API – HTTP Methods
? 10大REST API常見(jiàn)問(wèn)題?
1xx Informational/信息
這一系列狀態(tài)代碼表示信息內(nèi)容。這意味著已收到請(qǐng)求并正在處理中。以下是常用的信息狀態(tài)代碼:
100 Continue/繼續(xù):
此代碼表示服務(wù)器已收到請(qǐng)求標(biāo)頭,客戶端現(xiàn)在可以發(fā)送正文內(nèi)容。在這種情況下,客戶端首先發(fā)出請(qǐng)求(使用Expect:100-continue標(biāo)頭),以檢查它是否可以從部分請(qǐng)求開(kāi)始。然后,服務(wù)器可以響應(yīng)100繼續(xù)(OK)或417期望失敗(否)以及適當(dāng)?shù)脑颉?/p>
101 Switching Protocols/交換協(xié)議:
此代碼表示服務(wù)器可以處理來(lái)自客戶端的協(xié)議交換機(jī)請(qǐng)求。
102 Processing/處理:
此代碼是一個(gè)信息狀態(tài)代碼,用于長(zhǎng)期運(yùn)行處理,以防止客戶端超時(shí)。這告訴客戶等待未來(lái)的響應(yīng),該響應(yīng)將具有實(shí)際響應(yīng)主體。
2xx Success/成功
這一系列狀態(tài)代碼表示請(qǐng)求的成功處理。本類中一些常用的狀態(tài)代碼如下:
200 OK/確定:
此代碼表示請(qǐng)求成功,響應(yīng)內(nèi)容已酌情返回給客戶端。
201 Created/創(chuàng)建:
此代碼表示請(qǐng)求成功,并創(chuàng)建了新資源。
204 No Content/無(wú)內(nèi)容:
此代碼表示請(qǐng)求已成功處理,但此請(qǐng)求沒(méi)有返回值。例如,您可能會(huì)找到此類狀態(tài)代碼來(lái)響應(yīng)資源的刪除。
3xx Redirection/重定向
這一系列狀態(tài)代碼表明,客戶端需要執(zhí)行進(jìn)一步的操作,以在邏輯上結(jié)束請(qǐng)求。本類中常用的狀態(tài)代碼如下:
304 Not Modified/未修改:
此狀態(tài)表示自上次訪問(wèn)以來(lái),該資源沒(méi)有被修改過(guò)。僅當(dāng)客戶端通過(guò)將請(qǐng)求標(biāo)頭設(shè)置為If-Modified-Since或If-None-Match時(shí)允許時(shí),才會(huì)返回此代碼。客戶可以根據(jù)此狀態(tài)代碼采取適當(dāng)行動(dòng)。
4xx Client Error/客戶端錯(cuò)誤
這一系列狀態(tài)代碼表示處理請(qǐng)求時(shí)出錯(cuò)。本類中一些常用的狀態(tài)代碼如下:
400 Bad Request/不良請(qǐng)求:
此代碼表示服務(wù)器由于請(qǐng)求中的語(yǔ)法格式錯(cuò)誤而無(wú)法處理請(qǐng)求。客戶端可以在更正請(qǐng)求后再試一次。
401 Unauthorized/未經(jīng)授權(quán):
此代碼表示資源需要身份驗(yàn)證。客戶端可以使用適當(dāng)?shù)纳矸蒡?yàn)證再次嘗試。
403 Forbidden/禁止:
此代碼表示服務(wù)器拒絕響應(yīng)請(qǐng)求,即使請(qǐng)求有效。如果請(qǐng)求不是HEAD方法,原因?qū)⒘性谡膬?nèi)容中。
404 Not Found/未找到:
此代碼表示在請(qǐng)求中指定的位置找不到請(qǐng)求的資源。
405 Method Not Allowed/方法不允許:
此代碼表示請(qǐng)求中指定的HTTP方法不允許在URI標(biāo)識(shí)的資源上使用。
408 Request Timeout/請(qǐng)求超時(shí):
此代碼表示客戶端未能在服務(wù)器上設(shè)置的時(shí)間窗口內(nèi)響應(yīng)。
409 Conflict/沖突:
此代碼表示請(qǐng)求無(wú)法完成,因?yàn)樗c在資源上建立的一些規(guī)則沖突,例如驗(yàn)證失敗。
5xx Server Error/服務(wù)器錯(cuò)誤
此系列狀態(tài)代碼表示在處理有效請(qǐng)求時(shí)服務(wù)器故障。以下是本類中常用的狀態(tài)代碼之一:
500 Internal Server Error/內(nèi)部服務(wù)器錯(cuò)誤:
此代碼指示通用錯(cuò)誤消息,并指示服務(wù)器上發(fā)生意外錯(cuò)誤,請(qǐng)求無(wú)法完成。
501(Not Implemented/未實(shí)施):
服務(wù)器要么無(wú)法識(shí)別請(qǐng)求方法,要么無(wú)法滿足請(qǐng)求。通常,這意味著未來(lái)的可用性(例如,Web服務(wù)API的新功能)。
HTTP Status Codes匯總
1×× 信息
- 100 Continue/繼續(xù)
- 101 Switching Protocols/交換協(xié)議
- 102 Processing/處理
2×× 成功
- 200 OK/好
- 201 Created/創(chuàng)建
- 202 Accepted/接受
- 203 Non-authoritative Information/非權(quán)威信息
- 204 No Content/無(wú)內(nèi)容
- 205 Reset Content/重置內(nèi)容
- 206 Partial Content/部分內(nèi)容
- 207 Multi-Status/多狀態(tài)
- 208 Already Reported/已報(bào)告
- 226 IM Used/IM使用
3×× 重定向
- 300 Multiple Choices/多項(xiàng)選擇
- 301 Moved Permanently/永久移動(dòng)
- 302 Found/找到
- 303 See Other/查看其他
- 304 Not Modified/未修改
- 305 Use Proxy/使用代理
- 307 Temporary Redirect/臨時(shí)重定向
- 308 Permanent Redirect/永久重定向
4××客戶端錯(cuò)誤
- 400 Bad Request/錯(cuò)誤請(qǐng)求
- 401 Unauthorized/未經(jīng)授權(quán)
- 402 Payment Required/需要付款
- 403 Forbidden/禁止
- 404 Not Found/未找到
- 405 Method Not Allowed/不允許方法
- 406 Not Acceptable/不可接受
- 407 Proxy Authentication Required/需要代理身份驗(yàn)證
- 408 Request Timeout/請(qǐng)求超時(shí)
- 409 Conflict/沖突
- 410 Gone/走了
- 411 Length Required/所需長(zhǎng)度
- 412 Precondition Failed/先決條件失敗
- 413 Payload Too Large/有效載荷太大
- 414 Request-URI Too Long/請(qǐng)求-URI太長(zhǎng)
- 415 Unsupported Media Type/不受支持的媒體類型
- 416 Requested Range Not Satisfiable/請(qǐng)求的范圍不令人滿意
- 417 Expectation Failed/預(yù)期失敗
- 418 I’m a teapot/
- 421 Misdirected Request/誤導(dǎo)請(qǐng)求
- 422 Unprocessable Entity/不可處理實(shí)體
- 423 Locked/鎖定
- 424 Failed Dependency/依賴失敗
- 426 Upgrade Required/需要升級(jí)
- 428 Precondition Required/需要先決條件
- 429 Too Many Requests/請(qǐng)求太多
- 431 Request Header Fields Too Large/請(qǐng)求Header字段太大
- 444 Connection Closed Without Response/連接關(guān)閉,沒(méi)有響應(yīng)
- 451 Unavailable For Legal Reasons/因法律原因不可用
- 499 Client Closed Request/客戶已關(guān)閉請(qǐng)求
5××服務(wù)器錯(cuò)誤
- 500 Internal Server Error/內(nèi)部服務(wù)器錯(cuò)誤
- 501 Not Implemented/未實(shí)施
- 502 Bad Gateway/壞網(wǎng)關(guān)
- 503 Service Unavailable/服務(wù)不可用
- 504 Gateway Timeout/網(wǎng)關(guān)超時(shí)
- 505 HTTP Version Not Supported/不支持HTTP版本
- 506 Variant Also Negotiates/變體也進(jìn)行談判
- 507 Insufficient Storage/存儲(chǔ)不足
- 508 Loop Detected/檢測(cè)到循環(huán)
- 510 Not Extended/未擴(kuò)展
- 511 Network Authentication Required/需要網(wǎng)絡(luò)身份驗(yàn)證
- 599 Network Connect Timeout Error/網(wǎng)絡(luò)連接超時(shí)錯(cuò)誤
參考資料
原文: REST API – HTTP Status Codes
Mozilla HTTP 響應(yīng)狀態(tài)碼
表格化,更易讀的HTTP狀態(tài)碼