Каков наилучший способ обработки ошибок и отображения на пользовательской странице ошибок (404 и 304) - PullRequest
0 голосов
/ 03 июля 2018

Я занимаюсь разработкой проекта Angular, и мне нужно создать структуру, чтобы обрабатывать ошибки 404 и 304, чтобы отображать / перенаправлять на определенную страницу ошибок для каждой из них. Итак, я хотел бы знать, какая структура является наилучшей или наиболее оптимальным способом обработки этих ошибок и перенаправления на пользовательские страницы ошибок. Может ли кто-то перенаправить mi к учебникам с информацией о его проблеме?

Спасибо!

1 Ответ

0 голосов
/ 03 июля 2018

Используйте HttpInterceptor для вашего решения. Создайте отдельный сервис, подобный этому

@Injectable()
export class Interceptor implements HttpInterceptor {

constructor(private token: TokenStorage, private router: Router) { }

intercept(req: HttpRequest<any>,next: HttpHandler): Observable<HttpEvent<any>> {

    console.log("I have intercepted");

    return next.handle(req).do(
        (err: any) => {
          console.log("Error thrown by Interceptor")
          if (err instanceof HttpErrorResponse) {

            if (err.status == 404 || err.status == 304) {

              //Navigate to which page you want to show

            }
          }
        });
  }
}
...