Я пытаюсь получить данные json из базы данных (sql) с помощью node.js, а затем передать их в app.get (express.js), но безуспешно.
У меня есть два файла urls.jsкоторый должен получить все URL-адреса из базы данных и в app.js я пытаюсь создать конечную точку API с помощью express.js.Мне удалось получить данные json в app.js, если я напишу запрос и запустю его, но не знаю, как разделить его на два файла.
код, который работает в app.js
app.get('/api/urls', (request, response) => {
db.query('SELECT * FROM urls', (error, result) => {
if (error) throw error;
response.send(result);
});
});
Я попытался разделить его на два файла, чтобы в urls.js (как у модели) я мог получить что-то вроде
class Urls {
async getUrls() {
const sql = `select * from urls`;
return await db.query(sql);
}
}
module.exports = Urls;
, а затем вызвать его в app.js (как у контроллера):
const data = new Urls();
app.get(/api/urls, (req, res) => {
res.send(data.getUrls());
}
В обоих случаях результат должен быть json