nk-cli
Version:
Initialize a vite app fast by NK-CLI
123 lines (118 loc) • 3.23 kB
text/typescript
import { MockMethod } from 'vite-plugin-mock';
import { resultError, resultSuccess, getRequestToken, requestParams } from '../_util';
export function createFakeUserList() {
return [
{
userId: '1',
mobile: '18888888888',
realName: 'Mamba',
avatar: 'https://s1.ax1x.com/2022/05/11/OUGWDO.png',
desc: 'manager',
password: '123456',
token: 'fakeToken1',
homePath: '/dashboard/workbench',
roles: [
{
roleName: 'Super Admin',
value: 'super',
},
],
},
{
userId: '2',
mobile: '19999999999',
password: '123456',
realName: 'Forever',
avatar: 'https://s1.ax1x.com/2022/05/10/OtNDQP.jpg',
desc: 'tester',
token: 'fakeToken2',
homePath: '/about',
roles: [
{
roleName: 'Tester',
value: 'test',
},
],
},
];
}
const fakeCodeList: any = {
'1': ['1000', '3000', '5000'],
'2': ['2000', '4000', '6000'],
};
export default [
// mock user login
{
url: '/basic-api/oauth/login',
timeout: 200,
method: 'post',
response: ({ body }) => {
const { mobile, password } = body;
const checkUser = createFakeUserList().find(
(item) => item.mobile === mobile && password === item.password,
);
if (!checkUser) {
return resultError('用户名或密码错误!');
}
const { userId, mobile: _username, token, realName, desc, roles } = checkUser;
return resultSuccess({
roles,
userId,
mobile: _username,
token,
realName,
desc,
});
},
},
{
url: '/basic-api/getUserInfo',
method: 'get',
response: (request: requestParams) => {
const token = getRequestToken(request);
if (!token) return resultError('Invalid token');
const checkUser = createFakeUserList().find((item) => item.token === token);
if (!checkUser) {
return resultError('The corresponding user information was not obtained!');
}
return resultSuccess(checkUser);
},
},
{
url: '/basic-api/getPermCode',
timeout: 200,
method: 'get',
response: (request: requestParams) => {
const token = getRequestToken(request);
if (!token) return resultError('Invalid token');
const checkUser = createFakeUserList().find((item) => item.token === token);
if (!checkUser) {
return resultError('Invalid token!');
}
const codeList = fakeCodeList[checkUser.userId];
return resultSuccess(codeList);
},
},
{
url: '/basic-api/logout',
timeout: 200,
method: 'get',
response: (request: requestParams) => {
const token = getRequestToken(request);
if (!token) return resultError('Invalid token');
const checkUser = createFakeUserList().find((item) => item.token === token);
if (!checkUser) {
return resultError('Invalid token!');
}
return resultSuccess(undefined, { message: 'Token has been destroyed' });
},
},
{
url: '/basic-api/testRetry',
statusCode: 405,
method: 'get',
response: () => {
return resultError('Error!');
},
},
] as MockMethod[];