HTTP Interceptor

smith_94·2022년 6월 29일
0

Angular HttpInterceptor 적용 예시

  1. http interceptor 서비스 생성
// auth-interceptor.service.ts

export class AuthInterceptorService implements HttpInterceptor {
  intercept(req: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {
    ...
    // 인증 확인 후 http 헤더 수정
    ...
   return next.handle(req).pipe(tap(event => {
      if (event instanceof HttpResponse) {
        ...
        // 응답이 포함된 요청일 경우 인증 갱신
        ...
      }
    }));
  }
}
  1. 모듈에 추가
// app.module.ts

@NgModule({
  ...
  providers: [
    {
      provide: HTTP_INTERCEPTORS,
      useClass: AuthInterceptorService,
      multi: true	// 여러개의 인터셉터 사용 여부
    }
  ],
})

0개의 댓글