日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

作為前端,經常需要從后端獲取數據,所以對 HTTP 的掌握也是很重要的。

其中 HTTP 狀態碼則代表了當前請求的狀態,比如客戶端還是服務端錯誤之類的,也是考的比較多的點

1xx 消息

這類狀態碼,代表請求已被服務端接受,但服務端還要繼續進行處理。

100 Continue

繼續

服務端收到請求,并表示可以繼續。在客戶端準備推送較大的數據時,可以用 100 表示允許。

101 Switching Protocols

切換協議

比較常見的是響應 WebSockets 連接,瀏覽器會先發送 HTTP 請求,在請求頭里帶上希望升級為 WebSockets 協議的相關信息。

服務端收到后,如果支持 WebSockets,就會返回這個狀態碼 101,進行 HTTP 到 WebSockets 的協議切換。

2xx 成功

這類狀態碼代表服務已被正常處理。

200 OK

成功。

200 是用得最多的狀態碼,前端請求接口,數據正常返回,就會拿到這個狀態碼。這是大家最喜歡看到的狀態碼。

3xx 重定向

代表客戶端需要進行進一步操作才能完成請求。

301 Moved Permanently

永久重定向。

請求的資源被永久移動到其他位置。

假如我們的一篇博客的 url 地址發生了永久的改變,但用戶收藏夾里的鏈接還是舊的,我們就可以在用戶請求舊鏈接時,返回 301 狀態碼,并賦上一個重定向地址。

HTTP/1.1 301 Moved Permanently
Location: http://www.example.org/index.asp

這樣用戶就能跳到正確的新地址中。

這新的重定向地址會被瀏覽器緩存,下次用戶訪問舊鏈接時,就不會發請求拿到 301,而是直接就跳到重定向地址了。

所以設置重定向地址時要小心點,別搞錯了。

還有一個常用用途是 HTTP 鏈接跳轉到 HTTPS 鏈接

比如我們訪問 http://zhihu.com/,就會跳轉到 https://www.zhihu.com/

HTTP 中的常用狀態碼及使用場景

 

302 Found

臨時重定向。

原始描述短語為 Moved Temporarily

適合一些臨時的重定向操作,比如因為服務器崩潰導致一些頁面無法提供正確的訪問,在修復期間,則可以通過 302 先暫時地重定向到一個新的地址。修復完后再讓用戶繼續訪問原鏈接。

302 不會持久緩存,但可以設置緩存時間持續一段時間。

HTTP/1.1 302 Found
Location: https://www-temp.example.org/
Cache-control: private; max-age=600

304 Not Modified

沒有改變。

304 指的是資源相比上次沒有發生變化,客戶端可以繼續使用之前緩存的資源,以減輕瀏覽器負擔。

這里涉及到了 HTTP 緩存中的強緩存和協商緩存知識。協商緩存中會用到 304 狀態碼。

具體可以看我之前寫的一篇文章:《HTTP 緩存策略:強緩存和協商緩存》

4xx 客戶端錯誤

客戶端的問題。

400 Bad Request

不好的請求

通用的客戶端錯誤,表示問題是出在客戶端身上的。比如傳的參數不對。

在前端和后端對接接口時,比較常看到這個錯誤,因為容易寫錯參數名,或者后端新增或修改了參數。

404 Not Found

不存在。

廣為人知的狀態碼,代表 url 對應資源不存在。

比如一些文章被刪除,是直接在數據庫中進行不可逆地徹底刪除的。然后就導致用戶訪問這個頁面時,服務器找不到對應數據,然后就返回一個 404,并提示 “頁面不存在”。

405 Method Not Allowed

方法不被允許。

請求方法沒用對,比如一個請求應該用 POST,你卻用了 GET 請求,就會得到 405。

拿到 405 通常說明你的 url 沒錯,錯的是方法。如果 url 也不對,你拿到的將是 404。

5xx服務器錯誤

服務端的問題,快去找后端,別老抓著前端一頓問。

500 Internal Server Error

內部服務錯誤

后端服務器的代碼出了 bug,比如讀取了一個 null 的屬性,就會導致服務無法正常運行下去,然后后端就會捕獲(catch)這個錯誤,返回 500,告知是后端服務器出了問題。

嚴重的情況下,后端服務直接崩潰。

502 Bad Gateway

網關錯誤。

比如后端服務崩潰,但中間的一些代理服務器 Web Server(比如 Ngnix)還能正確運行。但因為無法訪問到后端服務,所以就會返回一個 502。

504 Gateway Timout

網關超時

網關還在,但后端服務因為各種原因(比如因為一個死循環卡死了),導致一直沒有響應回來,在過了一段時間后網關了依舊沒能收到消息,就會給客戶端返回 504 網關超時。

結尾

常見的 HTTP 狀態碼大概就是這些,

我是前端西瓜哥,想要學習更多前端面試題解,歡迎關注我。

分享到:
標簽:HTTP
用戶無頭像

網友整理

注冊時間:

網站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網站吧!
最新入駐小程序

數獨大挑戰2018-06-03

數獨一種數學游戲,玩家需要根據9

答題星2018-06-03

您可以通過答題星輕松地創建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數有氧達人2018-06-03

記錄運動步數,積累氧氣值。還可偷

每日養生app2018-06-03

每日養生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定