Interceptores

by | May 31, 2019 | Angular, Ionic

HttpInterceptor es una interfaz que se ejecuta antes de enviar una petición http a un servicio, comúnmente se usa para adjuntar la información de autenticación del usuario a la peticiones.

1.- Se crea el provider del interceptor

ionic g provider interceptor

2.- En el archivo del provider creamos la clase que implemente la interfaz HttpInterceptor.

export class InterceptorsProvider implements HttpInterceptor

3.-Esta implementación requiere implementar el método intercept, el cual recibe la petición y el siguiente interceptor en la cadena.

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

4.-Dentro de este método integramos la lógica para obtener los headers  que deseamos enviar en cada una de las peticiones y los establecemos en el clon de la petición.

intercept(req: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {   const headers = new HttpHeaders({     'token-usuario': 'ABC112EO3O309754789'   });   const reqClone = req.clone({     headers   });   return next.handle(reqClone); }

5.- Ahora convertimos la clase en provider para que el framework pueda hacer uso de ella, esto se hace en el módulo principal.

providers: [
StatusBar,
SplashScreen,
{
provide: HTTP_INTERCEPTORS, useClass: InterceptorProvider, multi: true
},
]

6.-Listo, ahora todas las peticiones antes de ser enviadas deberán pasar por nuestro interceptor
para obtener los headers.



			

Entradas relacionadas

Descubre en 5 minutos las áreas de tu empresa que puedes mejorar