【发布时间】:2019-07-06 01:36:25
【问题描述】:
我的问题与React Native fetch() Network Request Failed 不同,我不是在为 http 或 https 苦苦挣扎,我只是想在请求因 Internet 连接、错误 API 等而失败时向用户提供一个很好的错误。而不是反应原生错误。
我有一个表单,想将它发送到服务器并得到响应,所以我写了这个:
submitForm = async () => {
fetch("www.somewhere.com", {
method: 'POST',
headers: {
'Content-Type': 'application/json',
},
body: JSON.stringify(some_data)
})
.then((response) => response.json())
.then((responseJson) => {
// do something
})
.catch((error) => {
this.setState({server_error: "request failed try again."});
});
};
但我的 catch 似乎无法正常工作,因为如果请求失败,我会从 react native 得到一个错误,如下所示: 而在生产中,它只是跳出应用程序,我该如何避免这种情况?
【问题讨论】:
标签: javascript reactjs react-native fetch