Я использую простой почтовый запрос к своему бэкэнду для данных формы, и по какой-то причине тело всегда пусто.
Я пытаюсь изолировать это, поэтому я изменил тип контента на приложение json и изменил данные на json, и только так я могу отправлять данные.
Клиентская сторона:
submitForm(event) {
event.preventDefault();
console.log("gggg");
const data = new FormData(event.target);
axios.post("http://localhost:4000/user-form-post",data).then(function (response) {
//handle success
console.log(response);
})
.catch(function (response) {
//handle error
console.log(response);
});
Серверная часть:
// app.use(bodyParser.json());
// app.use(bodyParser.urlencoded({extended:true}));
app.use(express.urlencoded());
// Parse JSON bodies (as sent by API clients)
app.use(express.json());
app.use(logger('dev'));
app.post('/user-form-post', (req,res) =>{
console.log("dfdf");
console.log(req.body); // alwayes print empty dict {}
res.end();
})
Это не работает, потому что ожидает jsons (ожидаемое поведение):
// app.use(bodyParser.json());
// app.use(bodyParser.urlencoded({extended:true}));
То же поведение с почтальоном.