DOClever 集成了 mockjs,所以我们也可以用它 mock 数据。尤其是前后端开发不同步的情况下,前端用 mock 数据可以节省一些时间,当然 mock 完数据,采用真实数据也会存在一些问题,这个是不可避免的。
好了,现在我们来谈怎么使用 DOClever 的 mock 数据。
第一:
后端同学些接口文档的时候,把 mock 数据填上。具体的 mock 规则可以看 mockjs 的文档,这里不做说明。
第一步:
-
下载 net.js。
- 在本地安装 node 环境
- 运行本地项目,比如我的项目运行后的访问地址是
http://localhost:8091
- 执行以下命令运行 net.js:
/*
5b1743f8f3c059004a5935b7 是我们项目在 DOClever 中的项目 ID
http://192.168.32.241:10000/mock/5b1743f8f3c059004a5933b7 这个使我们 mock server url
http://localhost:8091 真实项目的地址
这条命令主要是传入了两个参数,第一个是 mock server url,第二个是 真实项目地址
*/
node net.js http://192.168.32.245:10000/mock/5b1743f8f3c059004a5935b7 http://localhost:8091
如果DOClover 的接口状态处于 开发中
,那么访问时,他请求的是 mock server url,也就是http://192.168.32.245:10000/mock/5b1743f8f3c059004a5935b7 的 mock 数据。如果接口状态处于 开发完成
状态,那么请求的是真实项目的地址了。
在我的前端项目中配置了代理,访问 http://localhost:8091
会把请求代理到测试地址或是线上地址,所以我这里第二个参数就直接是 http://localhost:8091
。
net.js 这段代码是这样写的,请忽略乱码问题(net.js 下载下来就乱码了)。
var arguments = process.argv.splice(2);
var mockUrl = arguments[0];
var realUrl = arguments[1];
var port = arguments[2] ? arguments[2] : 36742;
var server = http.createServer(onProxy);
server.listen(port);
console.log(arguments.length > 0 ? ("鍐呯綉娴嬭瘯锛孧ock鏁版嵁姝g洃鍚鍙o細" + port) : "姝e湪杩愯涓紝璇风敤DOClever鐨勬帴鍙f祴璇曢〉闈㈣繘琛屽唴缃戞祴璇曪紒");
第三步:
访问 http://localhost:36742 就可以访问我们的项目了(之前我们是通过 http://localhost:8091
访问的)。
这样皆可以愉快地调接口了。