我有一个场景,如果我将重复的记录保存在DB中,则模式应显示确切的错误消息
使用axios的POST请求:
saveBankMaintenance(optionsBrstn){
return axios.post(`${API_URL_SAVE_BANK_MAINTENANCE}`,
[optionsBrstn]
)
我正在使用以下方式呼叫此POST请求:
const saveBrstn = useCallback(() => {
ClientMaintenanceService.saveBankMaintenance(optionsBrstn)
.then((response) => {
if(response.data.success === "Success"){
setShowBrstnSaveSuccessModal(true);
setShowBrstnSaveFailedModal(false);
}
}).catch((err) => {
setShowBrstnSaveSuccessModal(false);
setShowBrstnSaveFailedModal(true);
})
});
保存成功就可以了
但是,如果失败,它将直接进入catch
块,并且我无法在状态上设置错误消息
我是否可以通过http状态响应400来获取json响应(包含错误消息)?
TIA
您可以在error
属性的response
对象中获得响应数据。
尝试一下。
const saveBrstn = useCallback(() => {
ClientMaintenanceService.saveBankMaintenance(optionsBrstn)
.then((response) => {
if (response.data.success === "Success") {
setShowBrstnSaveSuccessModal(true);
setShowBrstnSaveFailedModal(false);
}
}).catch((err) => {
console.log(err.response.data); // you can get the response like this
console.log(err.response.status); // status code of the request
})
});