@stepan132

Правильно ли реализован перехват ошибок?

Здравствуйте. Правильно ли реализован код отлова ошибок при регистрации, или нужно делать это по другому? Вот код функции (Если не использовать throw, то в catch не приходит ошибка):
export let AuthUser = (userName, password) => async (dispatch) => {
    try {
        let token = await service.createRequestToken();
        let validatedToken = await service.validateRequestToken(userName, password, token.request_token);

        if (validatedToken.status_code === 3) {
            throw 'Неправильное имя или пароль';
        } else if (validatedToken.status_code === 8) {
            throw 'Вы совершили слишком много попыток входа, попробуйте позже';
        } else if (validatedToken.status_code === 9) {
            throw 'Сервер недоступен, попробуйте позже';
        } else if (validatedToken.status_code && validatedToken.status_code !== 1) {
            throw 'Что-то пошло не так, попробуйте позже';
        }

        let sessionId = await service.createSessionId(validatedToken.request_token);
        dispatch({type: 'SET_SESSION_ID', payload: sessionId});
        let userData = await service.getAccountDetails(sessionId.session_id);
        dispatch({type: 'SET_USER_DATA', payload: userData});
    } catch (err) {
        dispatch(stopSubmit("auth", {_error: err}));
    }
}

P.S. Меня интересует правильный ли метод я выбрал, а не что-то другое.
Заранее спасибо за помощь.
  • Вопрос задан
  • 95 просмотров
Пригласить эксперта
Ответы на вопрос 1
rockon404
@rockon404 Куратор тега React
Frontend Developer
По-хорошему, тексты ошибок должен посылать сервер. Ошибки валидации форм по ключам.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы