在catch块中,Axios不会以JSON的形式返回错误。
注册页面
const handleSignup = async () => {
try {
setIsLoading(true)
const res = await axios({
url: 'http://10.0.2.2:8080/signup',
method: 'POST',
data: { name, email, password },
})
Alert.alert(res.data.message)
} catch (err) {
console.error(err);
} finally {
setIsLoading(false)
}
}
服务器端
return res.status(400).json({ data: { message: 'Email already exists.' } })
我希望它返回错误消息“电子邮件已存在”,但它返回[AxiosError:请求失败,状态代码为400。我尝试了各种方法,但没有得到预期的结果。
1条答案
按热度按时间h9vpoimq1#
根据文档Handling Errors
通过
error.response.data
访问catch块中的错误响应体在您的情况下: