javascript - 什麼時候後台主動回傳404
天蓬老师
天蓬老师 2017-05-16 13:37:32
0
4
818

2個問題,使用javascript語言 Node.js express框架開發

1.一般情況下頁面請求數據,如果找不到,返回應該用res.send()去寫麼,還是應該res.sendStatus(404),後者可能不妥,那請問什麼情況下伺服器會主動返回404?

2.前端怎麼取處理這個404,是判斷嗎err.response.status把路由連結到404頁面嗎?但是瀏覽器裡始終會報錯not get

天蓬老师
天蓬老师

欢迎选择我的课程,让我们一起见证您的进步~~

全部回覆(4)
我想大声告诉你
  1. 404 即資源找不到。如果你使用 RESTful 語意的話,在資源找不到時應當回傳 404。如果不是 RESTful 語意的話,自己創造的語意,你得自己搞定。一般為了前端處理方便會回傳200,並在訊息正文裡寫上錯誤訊息。但是這樣可能會帶來其它問題。

  2. 這取決於你使用的框架。 「但是瀏覽器裡始終會報錯not get」不清楚你是個什麼情況。 404 本來就是一種錯誤嘛。

如果你是自己的 API,其實還好說。 我最討厭某些直接給瀏覽器的網頁,明明沒找到,非要返回個200甚至是302跳到一個叫「錯誤」的頁面。有些甚至還沒等我過去看就跳到首頁去了。 我連結多了個逗號手動去改不行啊?一個列表頁面裡那麼多鏈接,我點開看看哪些還在,結果出錯的全部跳轉到同一頁面了,我怎麼知道到底哪些鏈接失效了呢?

左手右手慢动作

後端處理。
在所有路由都為匹配的情況下,發送404頁面

習慣沉默
  1. 後端回應了404的同時也是可以回傳響應體的。並沒有什麼不妥,找不到的路由必然需要回傳404

  2. 前端必然是需要有邏輯處理http的404狀態的,至於怎麼處理各有不同。但跳到404頁也必然是不妥的,給哥提示就差不多了

滿天的星座

路由根據你的url 沒有找到 對應的資源 ,所以 回傳 404 沒有找到符合的資源

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板