Guest User

Untitled

a guest
Feb 18th, 2018
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.08 KB | None | 0 0
  1. let duplicate = request.clone({
  2. headers: new HttpHeaders({
  3. 'Authorization': token
  4. })
  5.  
  6. getValidToken(): any {
  7. return new Promise(resolve => {
  8. this.secureStorage.create('login_data').then((storage: SecureStorageObject) => {
  9. storage.get('token').then(data => {
  10. resolve(data);
  11. });
  12. });
  13. });
  14. }
  15.  
  16. intercept(request: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {
  17. this.loginProvider = this.injector.get(LoginProvider); // avoid cyclic dependency errors, cf. https://github.com/angular/angular/issues/18224
  18. this.getValidToken().then(token => {
  19. let duplicate = request.clone({
  20. headers: new HttpHeaders({
  21. 'Authorization': token
  22. })
  23. });
  24. return next.handle(duplicate).do((event: HttpEvent<any>) => null, (error: any) => {
  25. if (error instanceof HttpErrorResponse)
  26. if (error.status === 401 || error.status === 403)
  27. /* redirect to login, username/password do not match anymore */
  28. this.injector.get(NavController).setRoot(LogoutPage);
  29. });
  30. })
  31. }
Add Comment
Please, Sign In to add comment