У меня есть функция getUser (), которая запрашивает конечную точку и возвращает объект пользователя или ошибку 401, если вызов не авторизован.Как я мог справиться с ошибкой в эпосе?Я не должен использовать rxjs для создания HTTP-наблюдаемого для использования с fetch.AuthFetch - это просто оболочка над выборкой, которая устанавливает правильный заголовок для аутентификации.Моя функция getUser () выглядит следующим образом:
async getUser() {
return authFetch(BASE_URL + '/user', {
method: 'GET',
headers: {
'Content-Type': 'application/json',
},
})
.then(handleErrors)
.then(response => response.json())
.catch(error => console.log(error));
}
function handleErrors(response) {
if (!response.ok) {
throw new Error(response.status);
}
return response;
}
Мой вход в систему выглядит следующим образом:
export const login = (action$: AnyAction, state$: any) => action$.pipe(
withLatestFrom(state$),
flatMap(() => from(getUser())
.pipe(
tap((data) => console.log('tap: ', data)),
)
),
catchError((err: any) => {
console.log('Error: ', err);
return empty();
})
);
Когда я подключаюсь к потоку, я либо получаюundefined или объект данных пользователя.Как я могу обработать эту ошибку, желательно с использованием возвращенного кода ошибки.Спасибо!