Я пытаюсь реорганизовать это, в частности, запись массиваАльтернативный способ создания массива из объектов POST в NodeJS
app.post('/insert', function(req,res){
var record = {
operator: req.body.operator,
email: req.body.email,
telephone: req.body.telephone,
notes: req.body.notes
};
dbconn.query('INSERT INTO operators SET ? ', record, function(err,result){
if(err) {
console.log(err);
}
else {
console.log('Last record insert :' + req.body.operator);
res.redirect('/myrecords');
}
});
});
к следующему, который работает просто отлично
app.post('/insert', function(req,res){
var record = req.body; // <- Refactored
dbconn.query('INSERT INTO operators SET ? ', record, function(err,result){
if(err) {
console.log(err);
}
else {
console.log('Last record insert :' + req.body.operator);
res.redirect('/myrecords');
}
});
});
Хотя что размещенные объекты из html-формы получают вставку в массив записей и сохраняются в DB правильно в паре, я все еще не убежден, что это ортодоксальный способ.
Я что-то упустил или это просто неправильное чувство? Я попытался использовать циклы для получения всех req.body.data, но я отказался от него.
Любая вероятность того, что вышеуказанный способ может привести к ошибкам в любых будущих сценариях?
спасибо, ясный. Теперь, поскольку форма html имеет определенные поля, которые могут быть заполнены, как пользователь может «ввести» значение, которое мы не хотим получать в объекте POST, например operator.id, который я хочу сохранить, генерируемый только MySQL DB. – Vasikos
HTML-форма отображается на стороне клиента (в браузере пользователя). Пользователь не должен соблюдать правила формы и может добавлять элементы ввода в эту форму, чтобы они были отправлены в тело POST, или даже обойти форму вместе и просто вызвать ваш API напрямую с помощью HTTP POST из некоторого кода они пишут. – Joe