Как я могу прочитать данные, полученные в формате application / x-www-form-urlencoded на сервере узла?

Я получаю данные по URL-адресу webhook в качестве запроса POST. Обратите внимание, что тип содержимого этого запроса application/x-www-form-urlencoded.

это запрос от сервера к серверу. И на моем сервере узла я просто попытался прочитать полученные данные, используя req.body.parameters но результирующие значения "undefined"?

Итак, как я могу прочитать данные запроса данных? Нужно ли анализировать данные? Нужно ли устанавливать какой-либо модуль npm? Можете ли вы написать фрагмент кода, объясняющий случай?

1 ответов


Если вы используете Express.JS как узел.JS Web application framework, затем используйте ExpressJS body-parser.

пример кода будет выглядеть следующим образом.

var bodyParser = require('body-parser');
app.use(bodyParser.json()); // support json encoded bodies
app.use(bodyParser.urlencoded({ extended: true })); // support encoded bodies

// With body-parser configured, now create our route. We can grab POST 
// parameters using req.body.variable_name

// POST http://localhost:8080/api/books
// parameters sent with 
app.post('/api/books', function(req, res) {
    var book_id = req.body.id;
    var bookName = req.body.token;
    //Send the response back
    res.send(book_id + ' ' + bookName);
});