跳轉常規 -- 為什么不要使用404、500等http狀態碼作為業務代碼響應


不要使用HTTP狀態碼作為業務代碼響應

HTTP狀態碼

是指瀏覽器訪問網址,成功或異常時瀏覽器或服務器告知用戶的代碼數字,它指的是網絡或服務器的狀態,有着不同的含義。
參加MDNJava Api,常見的狀態碼:

  • 200 OK 請求成功
  • 301 重定向
  • 400 錯誤請求
  • 401 需要訪問授權,通常是basic授權
  • 403 禁止訪問該地址
  • 404 訪問地址不存在
  • 500 服務器異常

業務代碼

業務代碼是業務流程中可能產生的結果,比如:用戶密碼不正確、用戶不存在、訂單不存在、第三方api請求錯誤等。

Restful Api

有些人喜歡使用HTTP代碼作為業務代碼作為restful的響應結果,如用200表示業務返回成功,用404表示用戶不存在,用500作為sql查詢異常。

為什么不要這么做

  • 前端每次請求,可能產生的問題包括網絡問題、服務器問題和業務邏輯問題,HTTP狀態碼表示網絡傳輸的意義,如200只應該表示連接上了服務器,而不應該用來表示業務邏輯返回成功。HTTP狀態碼應該用於網絡問題和服務器問題判斷的依據,不應該閹割這部分的功能
  • 返回除200以外的狀態碼,前端需要作為額外的處理以及瀏覽器的額外處理


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM