Mudanças entre as edições de "Example of Http Interceptor for login authentication"
De Basef
(Criou página com ' <source lang="typescript"> import { Injectable, Injector } from '@angular/core'; import { HttpInterceptor, HttpRequest, HttpHandler, HttpEvent } from '@angular/common/http';...') |
|||
Linha 1: | Linha 1: | ||
− | <source lang=" | + | <source lang="javascript"> |
import { Injectable, Injector } from '@angular/core'; | import { Injectable, Injector } from '@angular/core'; | ||
import { HttpInterceptor, HttpRequest, HttpHandler, HttpEvent } from '@angular/common/http'; | import { HttpInterceptor, HttpRequest, HttpHandler, HttpEvent } from '@angular/common/http'; |
Edição das 14h16min de 23 de abril de 2018
import { Injectable, Injector } from '@angular/core'; import { HttpInterceptor, HttpRequest, HttpHandler, HttpEvent } from '@angular/common/http'; import { Observable } from 'rxjs/Observable'; import { LoginService } from './login.service'; @Injectable() export class AuthInterceptor implements HttpInterceptor { constructor(private injector: Injector) { } intercept(request: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> { const loginService = this.injector.get(LoginService); if (loginService.isLoggedIn()) { const authRequest = request.clone( { setHeaders:{'Authorization': `Bearer ${loginService.getUser().accessToken}`}}); return next.handle(authRequest); } else { return next.handle(request); } } }