Mongodb安装
参考:https://blog.csdn.net/baidu_38981831/article/details/86265645
设置yapi数据库
> db.auth('admin','123456')
1
> use yapi
switched to db yapi
> db.createUser({user:'admin',pwd:'123456',roles:[{role:"dbOwner",db:"yapi"}]})
Successfully added user: {
"user" : "admin",
"roles" : [
{
"role" : "dbOwner",
"db" : "yapi"
}
]
}
yapi安装
参考:https://hellosean1025.github.io/yapi/documents/redev.html
其他
高级mock接口支持open token方式请求
位置:/vendors/server/controllers/base.js,方法async init ,54行
变量openApiRouter新增:'/api/plugin/advmock/save'
此时就可以通过设置token的方式调用更改高级Mock中的脚本了,也就是/api/plugin/advmock/save
let openApiRouter = [
'/api/open/run_auto_test',
'/api/open/import_data',
'/api/interface/add',
'/api/interface/save',
'/api/interface/up',
'/api/interface/get',
'/api/interface/list',
'/api/interface/list_menu',
'/api/interface/add_cat',
'/api/interface/getCatMenu',
'/api/interface/list_cat',
'/api/project/get',
'/api/plugin/export',
'/api/project/up',
'/api/plugin/advmock/save'
];
高级Mock脚本支持nodejs require调用
位置:vendors/server/utils/commons.js:295
改动: vm.run(script, 'vm.js')
exports.sandbox = (sandbox, script) => {
try {
const { NodeVM } = require('vm2');
sandbox = sandbox || {};
const vm = new NodeVM({
require: {
external: true
},
sandbox: sandbox,
timeout: 3000
})
vm.run(script, 'vm.js')
return sandbox
} catch (err) {
throw err
}
};
然后就可以在高级mock脚本中:
var request = require('request');
request('https://www.baidu.com', function (error, response, body) {
if (!error && response.statusCode == 200) {
console.log(body) // 请求成功的处理逻辑
}
});