当前位置:网站首页 > Vue.js开发 > 正文

vue3中,js-cookie的使用 & token之获取token-getToken()、存储token-setToken()、移除token-removeToken()

vue3中,js-cookie的使用 & token之获取token-getToken()、存储token-setToken()、移除token-removeToken()

配置token

src\app\science\config\setting.config.js

/ * @description 导出通用配置 */ module.exports = { 
    // token存储位置localStorage sessionStorage cookie storage: 'sessionStorage', tokenTableName: 'saber-access-token', // token名称 tokenName: 'auth_token', // tokenName: 'Things-Auth', // token在localStorage、sessionStorage、cookie存储的key的名称 tokenTableName: 'saber-access-token', } 

src\utils\token.ts

import { 
    storage, tokenTableName } from '@/config/setting.config.js' import cookie from 'js-cookie' / * @description 获取token * @returns {string|ActiveX.IXMLDOMNode|Promise<any>|any|IDBRequest<any>|MediaKeyStatus|FormDataEntryValue|Function|Promise<Credential | null>} */ export function getToken() { 
    const token = sessionStorage.getItem('token') return token } export function getBPMToken() { 
    const config = sessionStorage.getItem('configInfo') || '{}' const configInfo = JSON.parse(config) const token = (configInfo && configInfo.bpmTenantToken) || getToken() return token } / * @description 存储token * @param token * @returns {void|*} */ export function setToken(token: string) { 
    if (storage) { 
    if ('localStorage' === storage) { 
    return localStorage.setItem(tokenTableName, token) } else if ('sessionStorage' === storage) { 
    return sessionStorage.setItem(tokenTableName, token) } else if ('cookie' === storage) { 
    return cookie.set(tokenTableName, token) } else { 
    return localStorage.setItem(tokenTableName, token) } } else { 
    return localStorage.setItem(tokenTableName, token) } } / * @description 移除token * @returns {void|Promise<void>} */ export function removeToken() { 
    if (storage) { 
    if ('localStorage' === storage) { 
    return localStorage.removeItem(tokenTableName) } else if ('sessionStorage' === storage) { 
    return sessionStorage.clear() } else if ('cookie' === storage) { 
    return cookie.remove(tokenTableName) } else { 
    return localStorage.removeItem(tokenTableName) } } else { 
    return localStorage.removeItem(tokenTableName) } } 
使用token
<script lang="ts" setup> import { 
    getToken,setToken,removeToken } from '@src/utils/token' //获取token const userInfo = ref({ 
    token: getToken(), menu: '设置', }) //设置token const token = userInfo.access_token setToken(token) //移除token removeToken() </script> 
到此这篇vue3中,js-cookie的使用 & token之获取token-getToken()、存储token-setToken()、移除token-removeToken()的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!

版权声明


相关文章:

  • vue2中,data为什么是函数2024-11-30 15:00:06
  • vue混入实例2024-11-30 15:00:06
  • js中,数组对象操作——双层遍历-for循环之splice-删除、push-添加 & 数组中添加对象 & 删除数组中对象 & 数组中对象的参数值置空2024-11-30 15:00:06
  • vue2中,html2canvas组件的使用——实现截图并保存到本地2024-11-30 15:00:06
  • vue中使用图像编辑器tui-image-editor(一)2024-11-30 15:00:06
  • vue3中,当前页中封装tab切换模块2024-11-30 15:00:06
  • vue3中,封装el-tree树形控件组件,用于组织架构——defineEmits、defineProps& vue3之computed计算属性、watch和nextTick监听的写法 & `${写法2024-11-30 15:00:06
  • vue3中,封装el-select选择器组件(二)——filterable模糊搜索、watch用法、nextTick用法、toRefs用法、sessionStorage取值、设置基准地址apiUrl2024-11-30 15:00:06
  • vue3中,封装el-select选择器组件(一)——表单四等分布局、查询、重置resetFields、el-date-picker起止日期、特殊字符校验、自定义指令v-throttle用于按钮防抖2024-11-30 15:00:06
  • vue3封装表单组件(三)02封装el-dialog组件的传值-select选择框、input输入框之查询、重置的使用 & vue3中父子传值的使用步骤2024-11-30 15:00:06
  • 全屏图片