gpt4 book ai didi

react-native - Axios 未处理的 promise 拒绝

转载 作者:行者123 更新时间:2023-12-04 15:53:10 25 4
gpt4 key购买 nike

我的 react-native 应用程序中出现了 axios 问题。此处提供了错误消息 Pic1 Pic2Actions.start() 从不运行。

编辑 1:这是完整的代码。编辑 2:错误信息图片Pic3至于结果 const res= await... 应该是问题所在。必须添加更多详细信息,否则我无法更新此问题;)

export const apiPostLogin = (
accountData
) => async dispatch => {
dispatch(setFetching(true));
try {
var instance = axios.create({
baseURL: 'https://api.xxxx.de/',
timeout: 1000
});

const res = await axios.post('/api/v1/auth/login', accountData);
Actions.Start();

dispatch(setAuthToken(res.data.token));


await dispatch(apiGetAccount(res.data.token));
console.log(res);
} catch (error) {
console.log(error.response);
dispatch(setFetching(false));
if (error.response.status === 401) {
dispatch(
setApiResponse({
apiResponse: true,
didShowResponse: false,
apiResponseError: true,
apiResponseCode: 401,
apiResponseMessage: 'E-Mail und Passwort stimmen nicht überein'
})
);
} else if (error.response.status === 417) {
dispatch(
setApiResponse({
apiResponse: true,
didShowResponse: false,
apiResponseError: true,
apiResponseCode: 417,
apiResponseMessage: 'Du hast Deine E-Mail noch nicht bestätigt'
})
);
} else {
dispatch(
setApiResponse({
apiResponse: true,
didShowResponse: false,
apiResponseError: true,
apiResponseCode: 499,
apiResponseMessage:
'Du kannst Dich im Moment nicht bei uns anmelden. Wir befinden uns im Wartungsmodus'
})
);
}
}
};

最佳答案

post 调用包装在 try catch 中(catch 对于处理被拒绝的 promise 至关重要) block 。您的网络请求失败。您需要捕获错误/处理 promise 拒绝

    try {
const res = await axios.post('/api/v1/auth/login', accountData);
console.log('Success!');
console.log(res.status);
console.log(res.data);
} catch (e) {
console.error('Failure!');
console.error(e.response.status);
throw new Error(e);
}
Actions.Start();

或尝试使用 axios() 而不是 axios.create()

return axios.({
method: 'post',
baseURL: userEndpoint,
headers: {
common: {
Accept: 'application/json',
}
}
}).then(...).catch(...);

关于react-native - Axios 未处理的 promise 拒绝,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53096811/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com