基于express + mockjs的mock服务器。 假如你的项目默认没有集成mock服务,那就可以使用本项目自己搭建mock服务。
- 支持对象格式配置mock接口
- 支持mock文件模块化
- 支持跨域
- 监听文件变化自动重启服务
// ssh方式
git clone git@github.com:huzhushan/mock-server.git
// https方式
git clone https://github.com/huzhushan/mock-server.git npm install
// 或者
yarn install npm start访问页面:http://localhost:8090 你将会看到以下内容:
欢迎访问mock-server,这是第一个接口返回的数据- 所有的接口都在mock文件夹下配置
- 支持模块化配置
访问
http://localhost:8090看到的是第一个接口返回的数据,打开mock文件夹下的api1.js可以看到第一个接口的配置:module.exports = { 'GET /' (req, res) { res.status(200).send("欢迎访问mock-server,这是第一个接口返回的数据") }, }
{
'GET /' (req, res) {
res.status(200).send("欢迎访问mock-server,这是第一个接口返回的数据")
},
}- 采用key:value键值对格式
- key中包含请求方法和请求地址
'GET /': `GET`是请求方法 `GET`后面的`/`是请求地址 - value是一个回调函数,里面处理请求和响应数据
- 回调函数接收的参数:
- req代表request,可以访问请求传递的参数
- res代表response,可以通过res返回数据给前端
打开mock目录下的api3.js:
const Mock = require('mockjs')
module.exports = {
'GET /api3' (req, res) {
res.status(200).json(Mock.mock({
"total|10-30": 1
}))
}
}可以看到通过Mock返回了随机数据
打开mock目录下的api4.js
module.exports = {
'GET /api4/:id' (req, res) {
console.log(req.params.id);
res.status(200).json(getApiData(req))
}
}url/api4/:id中的:id就是一个动态参数
可以根据自己的需求在mock目录下创建多个js文件或文件夹
修改或新增接口配置不用重启服务,服务会自动重启