2017-08-01 19 views
2

假设我们有以下命令行运行的JSON服务器(https://github.com/typicode/json-server):如何将json-server的选项设置为模块?

json-server db.json --routes routes.json --port 8008 --delay 1000

如果我们运行JSON-服务器作为一个模块,我们如何设置这些选项?我可以看到定义的db.json和定义的端口。但尚不清楚如何定义其余选项。

const jsonServer = require('json-server'); 
const server = jsonServer.create(); 
const router = jsonServer.router('db.json'); 
const middleWares = jsonServer.defaults(); 

server.use(middleWares); 

router.render = (req, res) => { 
    console.log(req); 
}; 

server.use(router); 
server.listen(8008,() => { 
    console.log('JSON Server is running'); 
}); 

回答

2

我发现了如何设置延迟。这需要安装连接暂停包,其也以JSON服务器代码中使用(https://www.npmjs.com/package/connect-pause):在server.js文件

npm install connect-pause 

然后,添加以下一个要求(“连接暂停” )并在json服务器应用程序中使用它。这里是我的代码:

const fs = require('fs'); 
const pause = require('connect-pause'); 
const jsonServer = require('json-server'); 
const server = jsonServer.create(); 
const router = jsonServer.router('db.json'); 
const middlewares = jsonServer.defaults(); 

server.use(middlewares); 
server.use(jsonServer.bodyParser); 

// 
// Define custom routes (routes.json) 
// 
var routes = JSON.parse(fs.readFileSync('routes.json')); 
server.use(jsonServer.rewriter(routes)); 

... 

server.use(pause(1000)); 
server.use(router); 
server.listen(8008,() => { 
    console.log('JSON Server is running'); 
}); 

要设置任何其他选项变化很大,但我主要需要知道如何设置延迟。

相关问题