Backend: Laravel + Passport
Frontend: Vue 2.0 + Vuex + Vue-Router
Kann ich access_token
,保存在localStorage
中,那么用户退出登录的话需要怎么操作?清空localStorage
erhalten, nachdem ich mich im Frontend angemeldet habe? Muss ich eine weitere Anfrage an das Backend senden?
Wenn der Benutzer nicht zum Abmelden klickt, sondern den Browser oder das Fenster direkt schließt, localStorage
里的access_token
ist es beim nächsten Besuch immer noch vorhanden. In diesem Fall ist die Sicherheit nicht sehr gut, oder?
Mein access_token
ist ein Jahr lang gültig und wird daher jedes Mal neu generiert, wenn ich mich anmelde. Wie kann dieses Problem gelöst werden?
Bitte geben Sie mir einige Ideen zum Umgang mit der Front-End-Benutzerauthentifizierung ... Vielen Dank! ! !
axios部分
router部分:
退出时删除
localStorage
中的access_token
。可以给Vuex写个插件,每次
commit
mutation
时,更新一下access_token
的刷新时间。下次登录时,判断这个刷新时间,5分钟前了,就认为登录信息过期了。
如果不想把
access_token
放到localStorage
中,可以放在Vuex中,每次都需要重新登录。重新登录时,你可以没必要都重新生成
access_token
吧。刚好总结了一个项目,欢迎star~
【vue+axios】一个项目学会前端实现登录拦截
认证信息以后台为准,不管是登录还是退出都要发送请求,然后根据api返回的结果前端进行操作,如果不记住认证信息用sesionStorage好点
设置路由的拦截器,拦截除了login和logout的所有页面,检查本地变量user是否存在,存在则判断上次校验时间,如果超出1分钟则重新校验。