Я немного новичок в Node.js и пишу некоторые API-интерфейсы GET REST в Express.js. Для одного из моих API мне нужно передать 2 параметра, чтобы получить данные из базы данных. Я добился этого, используя один параметр, но не более 2. кто-нибудь мне поможет, пожалуйста?
Здесь моя функция
getByNPPTahunBulan(req,res){
console.info(req.param.tahun_bulan)
Iuran_Dapen.findAll({
where: {
tahun_bulan: req.params.tahun_bulan,
npp: req.param.npp
}
}).then((data) => {
return res.send(data);
}).catch((err) => {
res.status(500).send({
message: err.message || 'Some error occurred while retrieving data.',
});
})
},
и адрес router.get('/iuranterakhir/:tahun_bulan/:npp', iuranDapen.getByNPPTahunBulan);
req.param.npp
должно быть req.params.npp
, это просто вызвано опечаткой. вы правильно использовали params
в tahun_bulan
, но забыли "s" в npp
. Вы также забыли букву «s» в вызове функции console.info()
.
req.params содержит объект параметра с соответствующим значением со следующим URL-адресом /:id/:name
эй.
{
'id': 1,
'name': 'foo'
}
и вы можете сделать что-то вроде этого:
const params = req.params;
и доступ следующим образом
params.id or params.name
ключи объектов зависят от имени параметров, которые вы указали в определении вашей конечной точки
вы хотите использовать многопараметрический с базой данных или с запросом