json-server-空数据库

时间:2019-05-22 14:11:13

标签: javascript json json-server

我有一个简单的server.js文件:

var jsonServer = require('json-server');
var server = jsonServer.create();
var router = jsonServer.router('db.json');
var middlewares = jsonServer.defaults();


server.get('/date', function(req, res) {
    var db = router.db;
    var date = db.get('date');
    res.jsonp(date);
});

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

在同一目录中,我有db.json

{
    "date": "current"
}

但是date似乎未定义。 当我在get方法调用中console.log这个变量时,我可以在console中看到:

  __wrapped__: {},
  __actions__: [ { func: [Function: get], args: [Object], thisArg: [Function] } ],
  __chain__: true,
  __index__: 0,
  __values__: undefined
}

我通过node server.js运行json-server。

我将不胜感激。

1 个答案:

答案 0 :(得分:0)

Okey,最好仔细阅读文档。
https://github.com/typicode/json-server#add-custom-routes

您提供给jsonServer.router函数的路径是相对于您启动节点进程的目录的。

因此,在server.js文件的顶部,最好添加:

const router = jsonServer.router(path.join(__dirname, 'db.json'));