我已经在后端中设置了Express,如果帐户已经存在,这就是逻辑。
try {
//check if email already exists
const existingUser = await User.findOne({ email : email });
if (existingUser) {
// return res.send('Already exists')
return res.status(400).json({err: "Account with email already exists"});
};
我能够使用axios获取200/201 ...响应的数据。但不是这个。 IT还将JSON响应返回给POSTMAN,但不返回给axios以获取400个代码。 我需要提取响应数据 我的前端代码!
const submit = async (e) => {
e.preventDefault();
if(password !== password2){
setErr("Passwords do not match")
};
const userData = { name, email, password };
const url = "http://localhost:5000/api/users/signup";
const res = await axios.post(url, userData);
// NO OUTPUT
console.log(res.data);
console.log(res);
}
答案 0 :(得分:2)
您需要一个try / catch
const submit = async e => {
e.preventDefault();
if (password !== password2) {
setErr("Passwords do not match");
}
const userData = { name, email, password };
const url = "http://localhost:5000/api/users/signup";
try {
const res = await axios.post(url, userData);
} catch (err) {
console.log(err.response);
}
};