【发布时间】:2020-10-02 17:00:41
【问题描述】:
我正在从 api 端点获取数据。 它需要用户名、电子邮件、密码、名字、姓氏并将其注册到数据库。 现在,如果发生一些错误,例如已使用的电子邮件,那么它会给出 400 状态代码并发送此代码
{
"err": "A user with the given email is already registered"
}
所以我想使用这个 api 端点。 在 react js 中我正在这样做。
const printError=(err)=>{
if((typeof(err)=='string'))
return err
else if(err.err!=undefined)
return err.err
else if(err.message!=undefined)
return err.message
else
return 'Some error occured.Try Again later.'
}
fetch(BaseUrl+'users/signup',{
method:'post',
credentials:'include',
body:JSON.stringify(user),
headers:{
'content-type':'application/json'
}
})
.then(response=>{
console.log(response)
if(response.ok)
return response.json()
else{
throw new Error(response)
}
})
.then(response=>{
alert(response.status)
})
.catch(error => { console.log('Registration error');console.log(error); alert('Registration Failed\nError: '+printError(error)); });
请告诉我在电子邮件已被占用时如何获取此 err 对象。
【问题讨论】:
标签: reactjs error-handling fetch