У меня есть API, который работает, как и ожидалось, от всех входящих запросов, использующих запрос application / json. Но недавно я столкнулся с необходимостью обрабатывать запрос POST от x-www-form-urlencoded, и тело запроса всегда пусто.
Я тестирую API, используя POSTMAN, и отлично работает, когда отправляю запрос, используя опцию raw с JSON (application / json). Но при отправке данных с использованием x-www-form-urlencoded тело остается пустым.
Маршрутом для POST является app / api / sensor, а файлы следующие:
app.js
var express = require('express');
var app = express();
.......
app.use(express.json());
app.use(express.urlencoded()); // THIS SHOULD WORK!
......
sensor.js POST
......
sensorRoute.post('/', (req, res, next) => {
console.log(req.body);
const temperature = req.body.temperature;
console.log(temperature);
if (!temperature) {
return res.status(400).send({'res': 'Missing data'});
} else {
return res.status(200).send({'res': 'OK'});
}
});
....
Ожидаемый результат должен показывать данные, которые были отправлены с использованием почтальона в req.body, а не пустой объект, и работать так же, как приложение / jason.