You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

43 lines
1.6 KiB
TypeScript

// 根据角色动态生成路由
import { defineFakeRoute } from 'vite-plugin-fake-server/client';
export default defineFakeRoute([
{
url: '/login',
method: 'post',
response: ({ body }) => {
if (body.username === 'admin') {
return {
success: true,
data: {
avatar: '/user_small.png',
username: 'admin',
nickname: 'Levi',
// 一个用户可能有多个角色
roles: ['admin'],
// 按钮级别权限
permissions: ['*:*:*'],
accessToken: 'eyJhbGciOiJIUzUxMiJ9.admin',
refreshToken: 'eyJhbGciOiJIUzUxMiJ9.adminRefresh',
expires: '2030/10/30 00:00:00',
},
};
} else {
return {
success: true,
data: {
avatar: 'https://avatars.githubusercontent.com/u/52823142',
username: 'common',
nickname: '小林',
roles: ['common'],
permissions: ['permission:btn:add', 'permission:btn:edit'],
accessToken: 'eyJhbGciOiJIUzUxMiJ9.common',
refreshToken: 'eyJhbGciOiJIUzUxMiJ9.commonRefresh',
expires: '2030/10/30 00:00:00',
},
};
}
},
},
]);