前后端分離, 前端如何防止直接輸入URL進入頁面?


轉自:https://blog.csdn.net/weixin_41829196/article/details/80444870

前后端分離,如何防止用戶直接在地址欄輸入url進入頁面,也就是判斷用戶是否登錄,沒有,則直接跳轉到登錄頁,后台可以用session記錄用戶登陸的狀態,疑問的是前端每次ajax請求,都要做狀態判斷么,沒登錄就location.href="login.html",還是有什么別的寫法?請教大神,重點想知道前端是如何寫的,求demo, 另外就是單頁面應用上,前端又是如何操作的?

 

answer:

是的,每個 Ajax 都需要對狀態進行判斷,但這個判斷可以由后端來做。
具體的做法是通過 cookie 做的,也就是我們在登錄頁登錄后,由后端返回一個帶有 Set-Cookie 的返回頭來種 cookie。那么在 cookie 失效前,發 Ajax 請求都是會自動帶有這個 cookie 的,這時后端就能進行判斷。
一旦這個 cookie 失效,后端在請求返回時應該用某種方式告訴前端,符合 HTTP 規范的做法是返回一個 401 狀態碼,這個時候前端通過攔截器(如 axios 的 interceptor)進行統一處理,跳轉到登錄頁。
---------------------
作者:HainesFreeman
來源:CSDN
原文:https://blog.csdn.net/weixin_41829196/article/details/80444870
版權聲明:本文為博主原創文章,轉載請附上博文鏈接!


免責聲明!

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



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