2017-01-10 6 views
4

Я новичок на Angular2. Я не мог найти ответ на свой вопрос: как заменить контент ответа, если служба в моем модуле завершится с ошибкой. Сценарий заключается в том, что модуль использует хешированный идентификатор из URL для выполнения запроса на обслуживание. Если URL-адрес был скопирован неправильно, запрос завершается с ошибкой. Мы думали, что на этом этапе мы должны отобразить страницу 404. В настоящее время, когда обнаружена ошибка, я перенаправляюсь на страницу 404. Мне кажется, что такое поведение вызывает проблемы, такие как проблемы в браузере, проблемы с обратной связью.404 ошибка при запросе на обслуживание. Как изменить статус ответа

Любая идея?

ответ

1

Вы могли бы страница не найдена страница

и в маршрутах:

{ 
    // all unvalid urls, get redirected to page not found page 
    path: '**', 
    component: PageNotFoundComponent, 
} 

и если вам нужно, чтобы перехватить недействительно URLs, например, в ваш сервис, основанный на реакции и использование:

this._router.navigateByUrl('/pagenotfound', { skipLocationChange: true }) 

Это также использует skipLocationChange, поэтому, когда пользователь нажимает кнопку «Назад» в браузере, пользователь не получает «застрял» на странице 404, он пропускает эту страницу.