您好,登錄后才能下訂單哦!
現(xiàn)在前后端分離的開發(fā)模式越來越流行,后端負責(zé)開發(fā)對應(yīng)的 API,前端只需要
關(guān)注前端頁面的數(shù)據(jù)展示和前端邏輯即可。 |
對于前后端分離這種開發(fā)模式,我個人還是比較喜歡的,因為這樣可以讓更專業(yè)的人做更專業(yè)的事情,后端專注于做 API 的開發(fā)設(shè)計,前端專注于數(shù)據(jù)的展示,頁面的樣式。
這樣前后端需要就某些信息達成一些共識,比如說常用的 HTTP 方法, 常用的 HTTP 狀態(tài)碼等
HTTP Method 較為簡單,我們常用的習(xí)慣如下:
下面來詳細介紹一下常用的 HTTP 狀態(tài)碼
1xx 狀態(tài)碼一般是一個請求的中間狀態(tài),一般是信息提示,請求協(xié)商
100 Continue,請求未結(jié)束,應(yīng)該繼續(xù)請求
101 Switching Protocol,協(xié)議轉(zhuǎn)換,在使用 Web Socket 的時候就會遇到,下面是一個示例,響應(yīng)會有一個
Connection: Upgrade
的請求頭,
Upgrade
會指定要使用的協(xié)議名稱
2xx 一般表示請求處理成功
200 OK,請求處理成功
201 Created,請求處理成功,并且新資源已經(jīng)創(chuàng)建
202 Accepted,請求已經(jīng)接受,正在處理,尚未處理完成
204 No Content,響應(yīng)內(nèi)容為空,在 asp.net core 中返回一個 Json(null) 的時候就會是一個 NoContent 的結(jié)果
3xx 一般表示重定向
301 Moved Permanently 永久重定向
302 Found 臨時重定向
307 Temporary Redirect 臨時重定向請求
308 Permanent Redirect 永久重定向請求
這幾個重定向的區(qū)別:
4xx 一般表示客戶端請求錯誤
400 BadRequest,錯誤請求,一般用來表示請求參數(shù)異常,比如請求的某一個參數(shù)不能為空,但實際請求是空
401 Unauthorized,未授權(quán),資源需要授權(quán)或登錄,而用戶沒有登錄或者沒有提供訪問所需的 Token 等
403 Forbidden,禁止訪問,當(dāng)前用戶沒有權(quán)限訪問資源,如需要Admin角色的用戶,但是請求的用戶沒有這個角色
404 NotFound,未找到資源,資源不存在
405 Method Not Allowed,不允許的方法調(diào)用,資源不支持的請求方法,比如資源只允許 GET 請求,但是實際請求使用了 POST 或 DELETE 方法
406 Not Acceptable,請求的資源客戶端不支持處理,比如客戶端希望獲取 xml 的響應(yīng),但是服務(wù)器端只支持 JSON 響應(yīng)
408 Request Timeout, 請求處理超時
409 Conflict,請求資源沖突,常發(fā)生在 PUT 更新資源信息時發(fā)生,比如更新時指定資源的 ETAG,但是PUT請求時,資源的 ETAG 已經(jīng)發(fā)生變化
410 Gone,請求資源在源服務(wù)器上不再可用
411 Length Required,請求需要攜帶 Content-Length 請求頭
412 Precondition Failed,請求預(yù)檢失敗,請求的某些參數(shù)不符合條件
The pre condition given in the request evaluated to false by the server.
413 Payload Too Large,請求的參數(shù)太大,請求的 body 過大,服務(wù)器拒絕處理
414 URI Too Long,請求的 URI 地址太長,服務(wù)器拒絕處理
415 Unsupported Media Type,不支持的媒體類型或不支持的編碼,比如服務(wù)器只支持處理 JSON 請求,但是請求是 xml 格式
5xx 一般表示服務(wù)端錯誤
500 Internal Server Error,服務(wù)器內(nèi)部錯誤
501 Not Implemented 服務(wù)器不支持需要處理請求的功能,比如圖片壓縮等處理
502 Bad Gateway 反向代理或網(wǎng)關(guān)找不到處理請求的服務(wù)器
503 Service Unavailable 服務(wù)不可用
504 Gateway Timeout 網(wǎng)關(guān)超時
505 HTTP Version Not Supported,不支持的 HTTP 版本,服務(wù)器不支持或拒絕處理這個 HTTP 版本的請求
原文來自: https://www.linuxprobe.com/http-status-code.html
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。