chore: 低代码平台可配置拦截器
This commit is contained in:
parent
32d5e41f2b
commit
7b23a51134
31
apps/platform/src/components/renderer/index.vue
Normal file
31
apps/platform/src/components/renderer/index.vue
Normal file
@ -0,0 +1,31 @@
|
|||||||
|
<script setup lang="ts">
|
||||||
|
import WujieVueRendererAdapter from '@sy/wujie-vue3-renderer-adapter';
|
||||||
|
import axios from 'axios';
|
||||||
|
|
||||||
|
import { useUserStore } from '#/store/user';
|
||||||
|
|
||||||
|
const props = defineProps<{
|
||||||
|
[key: string]: any;
|
||||||
|
fileId: string;
|
||||||
|
projectId: number;
|
||||||
|
}>();
|
||||||
|
|
||||||
|
const userStore = useUserStore();
|
||||||
|
|
||||||
|
const instance = axios.create({});
|
||||||
|
|
||||||
|
instance.interceptors.request.use(
|
||||||
|
(config) => {
|
||||||
|
config.headers.Authorization = `Bearer ${userStore.token}`;
|
||||||
|
return config;
|
||||||
|
},
|
||||||
|
(error) => Promise.reject(error),
|
||||||
|
);
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<template>
|
||||||
|
<WujieVueRendererAdapter
|
||||||
|
v-bind="props"
|
||||||
|
:interceptors="instance.interceptors"
|
||||||
|
/>
|
||||||
|
</template>
|
@ -29,7 +29,7 @@ instance.interceptors.response.use(
|
|||||||
if (response.data.code === 401) {
|
if (response.data.code === 401) {
|
||||||
const userStore = useUserStore();
|
const userStore = useUserStore();
|
||||||
console.log('用户未授权或登录已过期,即将跳转...');
|
console.log('用户未授权或登录已过期,即将跳转...');
|
||||||
// userStore.logout();
|
userStore.logout();
|
||||||
// 返回一个永远不会resolve的Promise,防止后续代码执行
|
// 返回一个永远不会resolve的Promise,防止后续代码执行
|
||||||
return new Promise(() => {});
|
return new Promise(() => {});
|
||||||
}
|
}
|
||||||
|
@ -1,7 +1,6 @@
|
|||||||
import type { RouteRecordRaw } from 'vue-router';
|
import type { RouteRecordRaw } from 'vue-router';
|
||||||
|
|
||||||
import WujieVueRendererAdapter from '@sy/wujie-vue3-renderer-adapter';
|
import Renderer from '#/components/renderer/index.vue';
|
||||||
|
|
||||||
import { VITE_RENDERER_URL } from '#/constants';
|
import { VITE_RENDERER_URL } from '#/constants';
|
||||||
import { router } from '#/router';
|
import { router } from '#/router';
|
||||||
|
|
||||||
@ -17,7 +16,7 @@ const routes: RouteRecordRaw[] = [
|
|||||||
{
|
{
|
||||||
path: '/static-file/list',
|
path: '/static-file/list',
|
||||||
name: 'StaticFileList',
|
name: 'StaticFileList',
|
||||||
component: WujieVueRendererAdapter,
|
component: Renderer,
|
||||||
meta: {
|
meta: {
|
||||||
icon: 'ant-design:file-text',
|
icon: 'ant-design:file-text',
|
||||||
title: '静态文件列表',
|
title: '静态文件列表',
|
||||||
|
@ -34,7 +34,6 @@ export const useUserStore = defineStore(
|
|||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
getCurrentUser().then((res) => {
|
getCurrentUser().then((res) => {
|
||||||
userInfo.value = res.data.data;
|
userInfo.value = res.data.data;
|
||||||
console.log('userInfo', userInfo.value);
|
|
||||||
});
|
});
|
||||||
}, 1000);
|
}, 1000);
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user