Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- let duplicate = request.clone({
- headers: new HttpHeaders({
- 'Authorization': token
- })
- getValidToken(): any {
- return new Promise(resolve => {
- this.secureStorage.create('login_data').then((storage: SecureStorageObject) => {
- storage.get('token').then(data => {
- resolve(data);
- });
- });
- });
- }
- intercept(request: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {
- this.loginProvider = this.injector.get(LoginProvider); // avoid cyclic dependency errors, cf. https://github.com/angular/angular/issues/18224
- this.getValidToken().then(token => {
- let duplicate = request.clone({
- headers: new HttpHeaders({
- 'Authorization': token
- })
- });
- return next.handle(duplicate).do((event: HttpEvent<any>) => null, (error: any) => {
- if (error instanceof HttpErrorResponse)
- if (error.status === 401 || error.status === 403)
- /* redirect to login, username/password do not match anymore */
- this.injector.get(NavController).setRoot(LogoutPage);
- });
- })
- }
Add Comment
Please, Sign In to add comment