W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗(yàn)值獎勵
處理一個(gè) RESTful API 請求時(shí), 如果有一個(gè)用戶請求錯(cuò)誤或服務(wù)器發(fā)生意外時(shí), 你可以簡單地拋出一個(gè)異常來通知用戶出錯(cuò)了。 如果你能找出錯(cuò)誤的原因 (例如,所請求的資源不存在),你應(yīng)該 考慮拋出一個(gè)適當(dāng)?shù)腍TTP狀態(tài)代碼的異常 (例如, yii\web\NotFoundHttpException 意味著一個(gè)404 HTTP狀態(tài)代碼)。 Yii 將通過HTTP狀態(tài)碼和文本 發(fā)送相應(yīng)的響應(yīng)。 它還將包括在響應(yīng)主體異常的 序列化表示形式。 例如,
HTTP/1.1 404 Not Found
Date: Sun, 02 Mar 2014 05:31:43 GMT
Server: Apache/2.2.26 (Unix) DAV/2 PHP/5.4.20 mod_ssl/2.2.26 OpenSSL/0.9.8y
Transfer-Encoding: chunked
Content-Type: application/json; charset=UTF-8
{
"type": "yii\\web\\NotFoundHttpException",
"name": "Not Found Exception",
"message": "The requested resource was not found.",
"code": 0,
"status": 404
}
下面的列表總結(jié)了Yii的REST框架的HTTP狀態(tài)代碼:
200
: OK。一切正常。201
: 響應(yīng)?POST
?請求時(shí)成功創(chuàng)建一個(gè)資源。Location
?header 包含的URL指向新創(chuàng)建的資源。204
: 該請求被成功處理,響應(yīng)不包含正文內(nèi)容 (類似?DELETE
?請求)。304
: 資源沒有被修改。可以使用緩存的版本。400
: 錯(cuò)誤的請求??赡芡ㄟ^用戶方面的多種原因引起的,例如在請求體內(nèi)有無效的JSON 數(shù)據(jù),無效的操作參數(shù),等等。401
: 驗(yàn)證失敗。403
: 已經(jīng)經(jīng)過身份驗(yàn)證的用戶不允許訪問指定的 API 末端。404
: 所請求的資源不存在。405
: 不被允許的方法。 請檢查?Allow
?header 允許的HTTP方法。415
: 不支持的媒體類型。 所請求的內(nèi)容類型或版本號是無效的。422
: 數(shù)據(jù)驗(yàn)證失敗 (例如,響應(yīng)一個(gè)?POST
?請求)。 請檢查響應(yīng)體內(nèi)詳細(xì)的錯(cuò)誤消息。429
: 請求過多。 由于限速請求被拒絕。500
: 內(nèi)部服務(wù)器錯(cuò)誤。 這可能是由于內(nèi)部程序錯(cuò)誤引起的。Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: