Экспресс MySQL API нуждаются в помощи, возвращая запрос - PullRequest
0 голосов
/ 08 января 2019

У меня есть экспресс API, который возвращает данные JSON через запрос get. Он получает данные из базы данных MySQL.

Работает нормально, когда я возвращаю пример данных JSON. Однако меня смущает, как вернуть данные запроса из MySQL.

Я знаю, что получаю данные, так как я делаю console.log (row [0]), и он печатает нужные мне данные, но я не могу понять, как их отправить.

Спасибо за помощь

/* GET users listing. */
router.get('/2018-2017/2', function(req, res, next) {


connection.query('CALL BRWally.spGetDealerships()', function (err, 
rows, fields) {
 if (err) throw err

  console.log('The solution is: ', rows[0])
})

/* rows[0] contains the data i want to return.

I am unsure how to send it.

To send static JSON data i have done...

res.json(
  [{
  id: 1,
  week: "15",
  year: "2016-2017",

  }

]);

*/
res.send({data: rows[0]});
});


/* terminal output */
You are now connected...
GET /users/2018-2017/2 404 15.324 ms - 156
The solution is:  [ RowDataPacket { PK_DealershipName: 'Guelph             
Auto Mall' },
  RowDataPacket { PK_DealershipName: 'Sports World' },
  RowDataPacket { PK_DealershipName: 'Waterloo' } ]

1 Ответ

0 голосов
/ 08 января 2019

вам просто нужно переместить "send" внутрь функции обратного вызова запроса.

router.get('/2018-2017/2', function(req, res, next) {
  connection.query('CALL BRWally.spGetDealerships()', function (err,   rows, fields) {
    if (err) throw err
    res.send({data: rows[0]});
    console.log('The solution is: ', rows[0])
  })
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...