Belakang: Laravel + Pasport
Hadapan: Vue 2.0 + Vuex + Vue-router
Bolehkah saya mendapatkan access_token
,保存在localStorage
中,那么用户退出登录的话需要怎么操作?清空localStorage
selepas log masuk di bahagian hadapan? Adakah saya perlu menghantar permintaan lain ke bahagian belakang?
Jika pengguna tidak klik untuk log keluar, tetapi terus menutup pelayar atau tetingkap, localStorage
里的access_token
akan tetap wujud pada kali berikutnya dia melawat Dalam kes ini, keselamatan tidak begitu baik, bukan?
My access_token
sah selama satu tahun, jadi ia akan dijana semula setiap kali saya log masuk. Bagaimana untuk menyelesaikan masalah ini?
Sila berikan saya beberapa idea tentang cara mengendalikan pengesahan pengguna bahagian hadapan...Terima kasih banyak! ! !
bahagian axios
bahagian penghala:
Padam
access_token
dalamlocalStorage
apabila keluar.Anda boleh menulis pemalam untuk Vuex dan mengemas kini masa muat semula
access_token
setiap kalicommit
mutasi
.Kali seterusnya anda log masuk, tentukan masa muat semula Jika 5 minit yang lalu, maklumat log masuk akan dianggap tamat tempoh.
localStorage
中的access_token
。可以给Vuex写个插件,每次
commit
mutation
时,更新一下access_token
的刷新时间。下次登录时,判断这个刷新时间,5分钟前了,就认为登录信息过期了。
如果不想把
Jika anda tidak mahu meletakkanaccess_token
放到localStorage
中,可以放在Vuex中,每次都需要重新登录。重新登录时,你可以没必要都重新生成
access_token
access_token
dalamlocalStorage
, anda boleh meletakkannya dalam Vuex, dan anda perlu log masuk semula setiap kali.Apabila log masuk semula, tidak perlu menjana semula
access_token
. 🎜Saya baru sahaja meringkaskan projek, selamat datang ke bintang~
[vue+axios] Projek untuk mempelajari cara melaksanakan pemintasan log masuk di bahagian hadapan
Maklumat pengesahan tertakluk kepada latar belakang Sama ada anda log masuk atau log keluar, anda mesti menghantar permintaan, dan kemudian mengendalikan bahagian hadapan berdasarkan keputusan yang dikembalikan oleh api adalah lebih baik untuk menggunakan sessionStorage
Tetapkan pemintas penghalaan, pintas semua halaman kecuali log masuk dan log keluar, semak sama ada pengguna pembolehubah setempat wujud, jika wujud, tentukan masa pengesahan terakhir dan sahkan semula jika melebihi 1 minit.