个人开源的小工具:exFakerD-快速创建假数据服务器,完全的模拟接口操作再也不用等后端写了

94 阅读1分钟

介绍缘由:

个人由于想快速的创建一个服务器模拟假数据,所以做了一个能够快速demo使用。

一开始想选择nitro作为服务器的基础,但是一通操作下来发现并不能够跨域,在这方面express已有成熟方案,假数据的生成选的fakerjs制作。而同样热更新速度也是非常重要,方便修改后的数据快速响应,所以出来这样一个工具,目前还在制作阶段,后续提供更多类型接口样例。

如果您正好需要一个假数据服务器,这个方案可以快速让您使用。

地址:github.com/RyanHo97/ex…

整合:express+faker+cors跨域处理+vite构建工具

使用方式:

1.克隆仓库到本地或通过pnpm命令下载(暂未开通)

git clone https://github.com/RyanHo97/exFakerD.git

2.安装

pnpm install

3.启动

pnpm run dev

案例:exFakerD\src\server\main.ts

import express from "express";
import cors from "cors";
import ViteExpress from "vite-express";
import { faker,SexType } from '@faker-js/faker';

type SubscriptionTier = 'free' | 'basic' | 'business';

interface User {
  _id: string;
  avatar: string;
  birthday: Date;
  email: string;
  firstName: string;
  lastName: string;
  sex: SexType;
  subscriptionTier: SubscriptionTier;
}

function createRandomUser(): User {
  return {
    _id: faker.datatype.uuid(),
    avatar: faker.image.avatar(),
    birthday: faker.date.birthdate(),
    email: faker.internet.email(),
    firstName: faker.person.firstName(),
    lastName: faker.person.lastName(),
    sex: faker.person.sexType(),
    subscriptionTier: faker.helpers.arrayElement(['free', 'basic', 'business']),
  };
}

export const USERS: User[] = faker.helpers.multiple(createRandomUser, {
  count: 10,
});

const app = express();

app.use(cors({
  origin: true, // 允许所有来源访问
  credentials: true, // 允许携带cookie
}));

app.get("/api/v1/test", (_, res) => {
  res.send({
    flag: true,
    message: "查询成功",
    result: {
      data: USERS,
      count: USERS.length,
    }
  });
});

ViteExpress.listen(app, 3000, () =>
  console.log("Server is listening on port 3000...")
);

贡献

欢迎贡献