每一个公司都有不一样的状况,如今所在的公司有很大的网络访问限制,出于安全考虑不少网站都不能访问,有的网站今天能够打开明天就打不开了,就像这种 mock
服务网上多了去了(淘宝的 rap2 就很好用关键是免费,还支持 mock
语法),可是因为网络安全限制在公司用不靠谱也不敢用,也可能会出现一直用的好好的而后忽然就没法访问的状况,本身造轮子呗。node
不考虑入参格式校验,确保对应url
可以返回正确的数据格式便可,
虽然项目里调用是使用post
方法调用,可是为了快速查看数据要求get
方式也可获取对应的数据
同时须要设置容许跨域访问react
objArr
,来包括全部的url
和对应的responseBody
node
启动一个httpServer
url
与对应数据的匹配关系url
经过取大对象数组(objArr
)里某个属性值返回对应对象的body
// api_user.js 数据与url匹配 const data = require('../data/mock-data001_050.js') module.exports = { mock: [ { url: '/mock001', data: { apiName: '获取测试数据----mock001', code: 0, body: data.mock001, }, }, { url: '/mock002', data: { apiName: '接口描述---对应数据的属性值', code: 0, body: data.mock002, }, }, ], }
// data/mock-data001_050.js 即数据文件 const data = {} data.mock001 = { name: '@cname', } data.mock002 = { age: '@age', } module.exports = data
基础功能知足要求,只需启动一个服务mongodb
即使经过增长文件的方法来优化后依旧很大(由于有的responseBody
里包含大量的数据)数据库
// 每一个文件里存放50个接口及对应的返回数据 let data001_050 = require('../data/mock-data001_050.js') let data051_100 = require('../data/mock-data051_100.js') let data101_150 = require('../data/mock-data101_150.js') const data = { ...data001_050, ...data051_100, ...data101_150 }
不只数据量愈来愈大,url
也愈来愈多,api
文件也会愈来愈大json
以前一直感受使用数据库可能会有点麻烦,就一直凑合着使用初版的方案,上周恰好工做量不大,两天不到就搞定了。仍是很满意的。api
启用mongodb
数据库,全部数据均保存在数据库,便于数据导出及贡献跨域
起初一直觉得不能在本身机器上启动数据库(通常软件没法正常安装且无管理员权限),后来发现有解压版的mongodb
数据库,解压便可使用。下载下来试了下发现能用。数组
mongodb
数据库进行文件导入导出的时候发现没有对应的命令。经搜素后发现操做工具与数据库分开了(记得之前版本是合在一块儿的,解压后就能用),须要单独下载并放置于数据库bin
目录,通过尝试果真如此。安全
mongodb
能够直接存储json
对象,一直觉得只能存储字符串网络
react
项目配置代理时须要留意安装的http-proxy-middleware
版本的问题,安装后根据文档配置发现项目报错,提示用法不正确,后来找缘由发现默认安装的是^0.20.0
而文档里是^1.X
的用法。修改版本后正常启动
从数据库查可存储 N 多数据,新增数据无需重启服务
需单独启动数据库,启动后台项目(提供查询及保存操做),启动前台项目(前台保存页面及展现页面)