Как добавить пару ключ-значение в словарь req.body во время запроса POST - PullRequest
0 голосов
/ 11 февраля 2019

Я использую NEDB и Express / Node.

Это мой API:

app.post('/api/texts/', function (req, res, next) {

    (req.body).push({
      key:   "additionalField",
      value: 0
    });

    texts.insert(req.body, function (err, text) {
        if (err) return res.status(500).end(err);
        return res.json(text);
    });
});

Я пытаюсь добавить свой собственный ключ в словарь тела (я хочузначение ключа должно быть целым).

Текущая ода выдает мне ошибку, говорящую «TypeError: req.body.push не является функцией».

1 Ответ

0 голосов
/ 11 февраля 2019

Почему вы не делаете новый объект?Например:

app.post('/api/texts/', function (req, res, next) {
    const obj = {};
    for (let [key, value] of Object.entries(req.body)) {
        obj[key] = value;
    }
    obj.additionalField = 0;


    texts.insert(obj, function (err, text) {
        if (err) return res.status(500).end(err);
        return res.json(text);
    });
});

Или вы можете просто использовать req.body.additionalField = 0; вместо создания нового объекта

...