欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

vue怎么封裝token

劉姿婷1年前9瀏覽0評論

在前端開發中,對于一些需要用戶認證的功能,我們需要將用戶的登錄狀態進行持久化,并在用戶每次進行操作時檢查用戶是否擁有相關的操作權限。而使用token作為用戶認證的令牌已經成為了一種廣泛使用的方式。在Vue中如何封裝token是我們需要解決的問題。

在項目中通常使用axios庫來發送http請求,我們可以在axios請求的攔截器中進行token的攔截,傳遞或更新token,這樣可以方便的實現token的管理。

import axios from 'axios'
const baseURL = 'https://example.com/api/'
export default function request(options) {
// 創建axios實例
const instance = axios.create({
baseURL,
timeout: 3000
})
// request請求攔截器
instance.interceptors.request.use(config =>{
// 從localStorage中獲取token
const token = localStorage.getItem('token')
// 如果有token,則向請求頭中添加token
if (token) {
config.headers.Authorization = `Bearer ${token}`
}
return config
}, err =>{
return Promise.reject(err)
})
// response響應攔截器
instance.interceptors.response.use(response =>{
// 如果響應頭中有token,則更新localStorage中的token
if (response.headers.authorization) {
localStorage.setItem('token', response.headers.authorization)
}
return response
}, err =>{
// 根據狀態碼進行相應的操作
return Promise.reject(err)
})
// 發送請求
return instance(options)
}

在這段代碼中,我們實現了一個request方法,這個方法接收一個options參數,所有的axios請求都通過這個方法來發送。當請求發送時,request方法會先對請求進行攔截,查看localStorage中是否存在token,如果存在,則將token添加到請求頭中。當服務器響應請求時,我們會從響應頭中獲取token并更新localStorage中的token。如果響應頭中沒有token,則不進行任何操作。

這樣我們就實現了一個Vue中封裝Token的方法,有效地管理用戶身份驗證所需的token。