rapnc
Version:
Node client for RAP 1.0
48 lines (43 loc) • 1.12 kB
JavaScript
var helper = require('../helpers');
var dao = require('../dao');
var schema = helper.schema;
var mockjs = require('mockjs');
function handle(req, res, app) {
var pid = req.params.pid;
var pathname = req.params[0];
var url = req.url;
var splited = url.split('/mockjs/' + pid + '/');
if (!splited) {
res.json({
code: 500,
msg: 'missing params'
})
return;
}
url = helper.cleanUrl(splited[1]);
dao.getActionJson(pid, pathname, url, function(err, data) {
if (err) {
res.json({
code: 500,
msg: err
})
return;
}
data = data[0];
data = schema.schemaToMockjs(data);
data = mockjs.mock(data);
if (!data) {
res.json({
code: 500,
msg: 'mockjs data generation error'
})
return;
}
res.json(data)
})
}
module.exports = function(prefix, app) {
app.all(prefix + '/mockjs/:pid/*', function(req, res) {
handle(req, res, app);
});
}