最近在做一個小專案
目前前端跟後端是分開寫,中間透過 axios 傳送資料
後端部分已經透過 Passport 做 token 的保護((token 存在 LocalStorage
而 token 則需透過帳號密碼登入取得
但問題來了,想請問 api 能透過 middleware 檢查,沒有就轉回登入
那其他的 View 我能否透過 Passport 的 token 檢查做登入驗證呢?
同樣是訪問每個 View 時沒有 token 就轉回登入頁
或是有更的做法再勞煩前輩指點
前端就做前端的事,
不要想做後端的事.
想請問前端的 View 有建議的未登入防堵方式嗎?
就跟前後端分離一樣,
送到後端檢查.
Laravel其實可以直接透過中介層,
我之前寫那篇應該有寫到.
如何用Laravel寫一個簡單的部落格網站
剛看一下,
在第34篇,
不過如果你Laravel不熟其實建議從前面看.
最終透過中介層做Session檢查token,失敗就踢回登入畫面,感謝
你不是已經有 LocalStorage 的資料了,檢查它不就好了。
再來就是靠後端幫你了。
畢竟,真正驗証的還是只能在後端。前端能做的事有限。
我前端的判斷條件。
基本先檢查有無 token 資料。token 資料其實我是有設定時效性的。
當 token 的資料剩下一定時間時,會跟後端做reToken。
這邊要注意,一定不能等時間到才拿token。
這樣會因為token失效而只能靠登入取得token。
要在還沒失效前。做重發token的動作。
再來,就是利用一下Laravel的特性了。
基本上在處理 axios 時,拿到401的錯誤。
就是一視同仁回登入頁