В экспрессе у меня есть валидатор, который проверяет, не являются ли входящие поля не пустыми:
exports.userSignupValidator = (req, res, next) => {
req.check("name", "Name is required").notEmpty();
req.check("password", "Password is required").notEmpty();
const errors = req.validationErrors();
if (errors) {
const firstError = errors.map(error => error.msg)[0];
return res.status(400).json({ error: firstError });
}
next();
};
Follwing 1st Axios API работает с вышеуказанным валидатором:
let jsonData = { name : name, email : email, password : password, url : `http://${site}.localhost:${port}`};
const response = await axios.post(`http://${site}.localhost:${port}/api/signup`,jsonData, {
headers: {
Accept: "application/json",
"Content-Type": "application/json"
}
});
Однако следующий API Axios не работает с валидатором выше.Валидатор, похоже, не может найти имя, адрес электронной почты и т. Д. :
let jsonData = { name : name, email : email, password : password, url : `http://${site}.localhost:${port}`};
const response = await axios.post(`http://${site}.localhost:${port}/api/signup`, {
headers: {
Accept: "application/json",
"Content-Type": "application/json"
},
body: JSON.stringify(jsonData)
});
Я также попробовал Почтальон, и он работал с предоставлением тела, подобного 2-му с ошибкой:
![enter image description here](https://i.stack.imgur.com/xlgM9.png)
Итак, я хочу предоставить тело, подобное 2nd Axios API, которое не удалось.Как я могу заставить его работать аксиально, чтобы выполнять свою работу, не давая данные в качестве параметра, но давая данные в теле?