午夜剧场伦理_日本一道高清_国产又黄又硬_91黄色网战_女同久久另类69精品国产_妹妹的朋友在线

您的位置:首頁技術文章
文章詳情頁

javascript - 登錄攔截邏輯問題?

瀏覽:164日期:2023-09-21 08:20:35

問題描述

現在我輸入賬號密碼,瀏覽器發送請求,成功返回了token;

想問的是:這個token我是放在cookie里好還是localStorage好呢?

還有就是其他頁面的登錄攔截怎么處理?

是判斷cookie或者localStorage里有token就放行嗎?(如果是,別人隨便造一個token也可以放行了啊)

還有成功的返回的超時時間是怎么用,是放在cookie里面嗎?

還是我的思路是錯的?

問題解答

回答1:

用戶認證成功后,服務端返回的 token 值,前端一般存在 localStorage 里。每次發出請求的時候,把該 token 放在請求頭即可。下面以 axios為例:

// http request 攔截器api.interceptors.request.use(config => { if (window.localStorage.ACCESS_TOKEN) { config.headers.Authorization = ’Bearer ’ + window.localStorage.ACCESS_TOKEN } return config}, error => { return Promise.reject(error)})// http response 攔截器api.interceptors.response.use(response => { if (response.status === 401) { // token過期 window.localStorage.removeItem(’ACCESS_TOKEN’) router.replace({ path: ’/user/login’, query: {redirect: router.currentRoute.fullPath } }) } return response}, error => { return Promise.reject(error)})

頁面的登錄攔截以 vue.js 的 vue-router 為例:

// 導航鉤子router.beforeEach((to, from, next) => { // 檢查登錄狀態 store.commit(types.CHECKOUT_LOGIN_STATUS) if (to.matched.some(record => record.meta.requiresAuth)) { // 判斷該路由是否需要登錄權限 if (window.localStorage.ACCESS_TOKEN) { // 如果本地存在 access_token,則繼續導航 next() } else { if (name === ’userLogin’) {next() } else {next({ // 登錄成功后,自動跳轉到之前的頁面 path: ’/user/login’, query: { redirect: to.fullPath }}) } } } else { next() }})

另外 token 值一般是很難偽造的,因為每次請求都會向后端去驗證該 token 值的有效性。

回答2:

建議 通過 服務端返回的 request 中 使用 setCookie 的方式進行 token設置,并且設置為 httpOnly,后面的請求中帶上cookie,然后根據 server 的回調判斷狀態。

標簽: JavaScript
相關文章:
主站蜘蛛池模板: 正在播放一区二区 | 在线观看国产黄色 | 亚洲欧洲日韩av | 665566综合网 | 色天堂在线视频 | 中文字幕高清视频 | 91精品国产高清一区二区三蜜臀 | 97超碰免费在线 | av官网在线观看 | 999这里只有精品 | 婷婷丁香亚洲 | 白白色免费视频 | 黄色a免费 | www.69av | 久久超级碰 | av老鸭窝| 九九视频网 | av不卡一区| 中文字幕亚洲精品在线 | 国产成人精品综合久久久久99 | 国产情侣久久 | 91麻豆传媒 | 懂色av蜜臀av粉嫩av永久 | 国产伦精品一区二区三区免费视频 | 香蕉久久a毛片 | 日本一级在线观看 | 五月天婷婷影院 | 国产不卡视频在线 | 国产一区成人 | 国产精品爽爽久久久久久 | 亚洲一区二区免费看 | 激情另类 | 一级特黄aaaaaa大片 | 欧美日韩成人一区 | 人人爽人人草 | 播五月婷婷 | 国产原创精品视频 | 国产精品美女网站 | 超碰人人超 | 天天干天天干天天干天天 | 国产精品久久久久久久久久久久久久久久 |