亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Vue3雙token加密登錄及注冊(cè)方式

 更新時(shí)間:2025年03月05日 08:55:42   作者:酒江  
本文介紹了雙Token機(jī)制在Vue3應(yīng)用中的實(shí)現(xiàn),包括登錄/注冊(cè)、請(qǐng)求攔截、響應(yīng)攔截、Token存儲(chǔ)、退出登錄等流程,重點(diǎn)是Token的刷新邏輯和安全性

一、核心思路

雙 Token 機(jī)制

  • Access Token:短期有效,用于請(qǐng)求 API。
  • Refresh Token:長(zhǎng)期有效,用于刷新 Access Token。

認(rèn)證流程

  • 用戶登錄或注冊(cè)成功后,后端返回 access_tokenrefresh_token。
  • 前端將 Token 安全存儲(chǔ)(如 localStoragecookie)。
  • 每次請(qǐng)求 API 時(shí),在請(qǐng)求頭中攜帶 access_token
  • 當(dāng) access_token 過(guò)期時(shí),使用 refresh_token 獲取新的 access_token。
  • 如果 refresh_token 也過(guò)期,則強(qiáng)制用戶重新登錄。

二、實(shí)現(xiàn)步驟

登錄/注冊(cè)

  • 用戶提交表單后,調(diào)用后端接口獲取 access_tokenrefresh_token
  • 將 Token 存儲(chǔ)到 localStoragecookie 中。

請(qǐng)求攔截

  • 使用 Axios 攔截器,在每次請(qǐng)求時(shí)自動(dòng)添加 access_token 到請(qǐng)求頭。

響應(yīng)攔截

  • 攔截 401 錯(cuò)誤(Token 過(guò)期),嘗試使用 refresh_token 刷新 access_token。
  • 如果刷新成功,更新 access_token 并重試請(qǐng)求。
  • 如果刷新失敗,清除 Token 并跳轉(zhuǎn)到登錄頁(yè)。

安全存儲(chǔ)

  • 使用 localStoragecookie 存儲(chǔ) Token,確保數(shù)據(jù)安全。
  • 可以考慮對(duì) Token 進(jìn)行加密存儲(chǔ)。

退出登錄

  • 清除存儲(chǔ)的 Token,并跳轉(zhuǎn)到登錄頁(yè)。

三、關(guān)鍵點(diǎn)

Token 刷新邏輯

  • 使用 refresh_token 調(diào)用后端接口獲取新的 access_token。
  • 避免重復(fù)刷新(通過(guò) _retry 標(biāo)志位)。

安全性

  • 使用 HTTPS 加密傳輸。
  • 避免將 Token 暴露在前端代碼中。

用戶體驗(yàn)

  • 在 Token 過(guò)期時(shí)自動(dòng)刷新,減少用戶重新登錄的頻率。

Vue 3 雙 Token 加密登錄和注冊(cè)的基本邏輯流程如下:

注冊(cè)

  • 用戶提交注冊(cè)信息(如用戶名、密碼)。
  • 后端驗(yàn)證用戶信息合法性(如密碼強(qiáng)度、用戶名唯一性)。
  • 后端生成一個(gè)加密的 Token(比如 JWT),并返回給前端。
  • 前端保存 Token,通常會(huì)將其存儲(chǔ)在 localStoragesessionStorage。

登錄

  • 用戶提交登錄信息(如用戶名、密碼)。
  • 后端驗(yàn)證用戶憑證是否合法。
  • 如果驗(yàn)證成功,后端返回兩個(gè) Token:一個(gè)用于身份驗(yàn)證的 access_token,另一個(gè)用于刷新身份的 refresh_token。
  • 前端保存 access_tokenrefresh_token。

access_token 用于 API 請(qǐng)求時(shí)攜帶。

refresh_token 用于刷新過(guò)期的 access_token。

請(qǐng)求保護(hù)接口

  • 前端每次發(fā)起需要認(rèn)證的請(qǐng)求時(shí),攜帶 access_token(通常放在 HTTP 請(qǐng)求頭中)。
  • 后端驗(yàn)證 access_token,如果有效則返回?cái)?shù)據(jù);如果無(wú)效,后端通過(guò) refresh_token 獲取新的 access_token。

刷新 Token

  • 當(dāng) access_token 過(guò)期時(shí),前端使用 refresh_token 通過(guò)接口請(qǐng)求獲取新的 access_token。
  • 后端驗(yàn)證 refresh_token 是否有效,如果有效則返回新的 access_token。

四、總結(jié)

通過(guò)雙 Token 機(jī)制,可以有效提升應(yīng)用的安全性,同時(shí)保證用戶體驗(yàn)。

核心在于:

  • Token 的獲取與存儲(chǔ)。
  • 請(qǐng)求與響應(yīng)攔截器的實(shí)現(xiàn)
  • Token 刷新邏輯的處理。

這種機(jī)制適用于需要高安全性的應(yīng)用場(chǎng)景,如金融、電商等。

前端通過(guò)雙 Token(access_tokenrefresh_token)機(jī)制處理身份驗(yàn)證和授權(quán),access_token 用于訪問(wèn)保護(hù)接口,refresh_token 用于在 access_token 過(guò)期時(shí)刷新認(rèn)證。

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • vue 項(xiàng)目全屏插件screenfull使用案例

    vue 項(xiàng)目全屏插件screenfull使用案例

    這篇文章主要介紹了vue 項(xiàng)目全屏插件screenfull使用案例,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧
    2023-12-12
  • vue+js實(shí)現(xiàn)視頻淡入淡出效果

    vue+js實(shí)現(xiàn)視頻淡入淡出效果

    這篇文章主要為大家詳細(xì)介紹了vue+js實(shí)現(xiàn)視頻的淡入淡出,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-08-08
  • Vue?export?default中的name屬性有哪些作用

    Vue?export?default中的name屬性有哪些作用

    這篇文章主要介紹了Vue?export?default中的name屬性有哪些作用,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-03-03
  • vue+element-ui集成隨機(jī)驗(yàn)證碼+用戶名+密碼的form表單驗(yàn)證功能

    vue+element-ui集成隨機(jī)驗(yàn)證碼+用戶名+密碼的form表單驗(yàn)證功能

    在登入頁(yè)面,我們往往需要通過(guò)輸入驗(yàn)證碼才能進(jìn)行登入,那我們下面就詳講一下在vue項(xiàng)目中如何配合element-ui實(shí)現(xiàn)這個(gè)功能,需要的朋友可以參考下
    2018-08-08
  • Vue.js數(shù)字輸入框組件使用方法詳解

    Vue.js數(shù)字輸入框組件使用方法詳解

    這篇文章主要為大家詳細(xì)介紹了Vue.js數(shù)字輸入框組件的使用方法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-10-10
  • Vue3 Element Plus表單自定義校驗(yàn)的實(shí)現(xiàn)全過(guò)程

    Vue3 Element Plus表單自定義校驗(yàn)的實(shí)現(xiàn)全過(guò)程

    這篇文章主要介紹了Vue3 Element Plus表單自定義校驗(yàn)的實(shí)現(xiàn)全過(guò)程,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2025-04-04
  • 詳解Vue ElementUI手動(dòng)上傳excel文件到服務(wù)器

    詳解Vue ElementUI手動(dòng)上傳excel文件到服務(wù)器

    這篇文章主要介紹了詳解Vue ElementUI手動(dòng)上傳excel文件到服務(wù)器,對(duì)ElementUI感興趣的同學(xué),可以參考下
    2021-05-05
  • vue+rem自定義輪播圖效果

    vue+rem自定義輪播圖效果

    這篇文章主要為大家詳細(xì)介紹了vue+rem自定義輪播圖效果,手指觸摸左滑和右滑,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-06-06
  • 老生常談vue2中watch的使用

    老生常談vue2中watch的使用

    watch的基本用法是在Vue實(shí)例中定義一個(gè)watch對(duì)象,該對(duì)象內(nèi)部包含需要監(jiān)聽(tīng)的數(shù)據(jù)項(xiàng)和對(duì)應(yīng)的回調(diào)函數(shù),這篇文章主要介紹了vue2中watch的使用,需要的朋友可以參考下
    2024-01-01
  • Vue設(shè)置長(zhǎng)時(shí)間未操作登錄自動(dòng)到期返回登錄頁(yè)

    Vue設(shè)置長(zhǎng)時(shí)間未操作登錄自動(dòng)到期返回登錄頁(yè)

    這篇文章主要介紹了Vue設(shè)置長(zhǎng)時(shí)間未操作登錄以后自動(dòng)到期返回登錄頁(yè),本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2020-01-01

最新評(píng)論