@PHPjedi

Как можно скрыть ошибку в консоли?

При отправке данных на backend, данные проверяются, и если что-то не так, react сообщает об этом пользователю.
5c7b2c3b08827729860146.png

Но почему-то в консоли появляется ошибка... Так ли должно быть? Нужно ли скрывать ошибку и не показывать в консоли? А как скрыть ошибку?)

5c7b2c9a0c0bf385089238.png
export const registerUser = (data, history) => dispatch => {
    fetch("/api/auth/register", {
        method: "post",
        headers: { 'Content-Type': 'application/json' },
        body: JSON.stringify(data)
    })
        .then(res => {
            return res.json();
        })
        .then(res => {
            if (res.access_token) {
                const { access_token } = res;
                localStorage.setItem('jwtToken', access_token);
                const decoded_jwt = jwt_decode(access_token);
                dispatch(setCurrentUser(decoded_jwt));
                history.push('/');
            }
            else if (res.errors) {
                dispatch({
                    type: 'GET_ERRORS',
                    payload: res.errors,
                })
            }
        })
        .catch(err => {
            dispatch({
                type: 'GET_ERRORS',
                payload: err,
            })
        });
}
  • Вопрос задан
  • 2108 просмотров
Решения вопроса 1
@karambafe
401 - нормальный ответ сервера на неправильные данные при авторизации.
MDN:
Код ответа на статус ошибки HTTP 401 Unauthorized клиента указывает, что запрос не был применен, поскольку ему не хватает действительных учетных данных для целевого ресурса.


Скрывать не нужно, так как консоль предназначена для разработчика (не зря в хроме раздел называется Chrome DEV tools), а не для пользователя. По таким ошибкам самому же будет намного проще дебажить.
Пользователю же важно вывести понятную ошибку в интерфейсе.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
kshshe
@kshshe
Frontend developer
Просто поменяйте код ответа на любой из диапазона 200-299. Код 400+ означает, что клиент сделал что-то неправильно, поэтому он увидит ошибку. Иногда без консоли не увидит, иногда увидит в каком-нибудь плагине число ошибок и станет хуже относиться к вашему сервису.
Ошибки 400+ нужно отдавать тогда, когда кто-то делает неправильный запрос. То есть тогда, когда клиент (человек или js-приложение) может знать, что так делать нельзя. А если это проверка на авторизацию, то это нормальный запрос, в котором нет ошибки.
Когда запрос корректный, клиент не ошибся, нужно отдавать код 200-299.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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