json-сервер - пустая база данных - PullRequest
0 голосов
/ 22 мая 2019

У меня есть простой 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 кажется неопределенным. Когда я console.log этой переменной внутри get вызова метода, я вижу в консоли:

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

Я запускаю json-сервер через node server.js.

Буду признателен за любую помощь.

1 Ответ

0 голосов
/ 22 мая 2019

Окей, всегда полезно внимательно прочитать документацию.
https://github.com/typicode/json-server#add-custom-routes

Путь, который вы указываете для функции jsonServer.router, относится к каталогу, из которого вы запускаетепроцесс узла.

Итак, в начале файла server.js целесообразно добавить:

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