Tüm istekler için authorithation üstbilgisini ayarlamak için yeni Angular 4.3
interceptors kullanmaya çalışıyorum. Ancak, çalışmıyor. intercept
interceptors içine kesme noktası belirledim ve tarayıcı isabet etmedi, bu yüzden angular
sadece benim önleyicimi yok sayar gibi görünüyor. Lütfen bana yardım edin, şimdiden teşekkürler.Açısal 4.3 Interceptor çalışmıyor
user.service.ts:
import {Injectable} from '@angular/core';
import 'rxjs/add/operator/map';
import {Observable} from "rxjs";
import {Http} from "@angular/http";
@Injectable()
export class UserService {
constructor(public http: Http) {
}
public getContacts(): Observable<any[]> {
return this.http.get('/users/contacts').map(contacts => contacts.json());
}
}
token.interceptor.ts
import {Injectable} from '@angular/core';
import {
HttpRequest,
HttpHandler,
HttpEvent,
HttpInterceptor
} from '@angular/common/http';
import {Observable} from 'rxjs/Observable';
import {AuthService} from "./shared/auth.service";
@Injectable()
export class TokenInterceptor implements HttpInterceptor {
constructor(public auth: AuthService) {
}
intercept(request: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {
request = request.clone({
setHeaders: {
Authorization: `Bearer ${this.auth.getToken()}`
}
});
return next.handle(request);
}
}
app.module.ts:
@NgModule({
...
providers: [
...
{provide: HTTP_INTERCEPTORS, useClass: TokenInterceptor, multi: true}
]
})
, bir öncekini genişleterek kendi http hizmetinizi oluşturmak gibi farklı bir yaklaşımla ilgilenirsiniz. Orada da aynısını yapabilirsin. –