前端开发中需要去调用后端的接口,如果后端还没有ready,为了不block开发进程,前端就需要自行mock数据。
我们常用的方法大概以下两种:
- 通过一个线上mock数据平台,如: Easy Mock
- 通过本地server。
第一种方法需要联网操作,我是碰到过几次网络链接不上的情况,,也可能是我自己的网络问题。
第二种方法,往往需要我们自己去写各种路由规则,如:
app.get('/api/getuser', (req, res)=>{
res.send({
...})
})
这里我们可以借助一个npm包 fe-api-mocker,通过定义一个接口规则的js文件,就可以实现对所有路由的处理,同时也支持mockjs规则。
- 可mock返回的延时时间(delay), 状态码(status),头部(headers),响应数据(data)
- 内置mockjs,让mock数据更加灵活高效
- 支持以函数方式返回data
安装fe-api-mocker
$ npm i -D fe-api-mocker
基本使用
1. 定义mock接口,如./mockData.js
默认为 GET 请求,如果是 POST 或者其他请求,请以[method api]方式配置, 如:post /api
/*
* 参数类型
* status 服务器返回状态码, 默认:200
* delay 请求延时,默认:100ms
* headers 返回头header
* data 返回数据, 可以为json,或者函数,函数接收req请求对象,可以获取query,body,或者params
*/
module.exports = {