const express = require(`express`);
const fs = require('fs');
let Mock = require('mockjs'); // 引入mock
const router = express.Router();
router.use((req, res, next) => {
console.log(`路由执行成功`, Date.now());
next();
});
const rootDir = 'api';
/*readdir读取目录下所有文件*/
fs.readdir(`./${rootDir}`, (err, files) => {
let dirs = files.filter((a) => {
return a.indexOf('.js') === -1;
});
dirs.forEach((a) => {
if (err) {
console.log(err);
} else {
fs.readdir(`./${rootDir}/${a}`, (err1, files1) => {
files1.forEach((item, index) => {
/*遍历读取文件夹中的内容*/
/*一个json文件就是一个请求*/
router.all(`/${a}/${item.replace(/.json/, '')}`, (req, res) => {
// 以utf8格式读取json文件内容
fs.readFile(`./${rootDir}/${a}/${item}`, 'utf-8', (err, data) => {
if (err) {
console.log(err);
} else {
// 以json对象返回数据
res.json(Mock.mock(JSON.parse(data)));
}
});
});
});
});
}
});
});
module.exports = router;