26 lines
599 B
TypeScript
26 lines
599 B
TypeScript
import {HttpInterceptorFn} from '@angular/common/http';
|
|
import {inject} from '@angular/core';
|
|
import {AuthService} from '../services/auth.service';
|
|
|
|
const excludedUrls = ['/auth/login'];
|
|
|
|
export const AuthInterceptor: HttpInterceptorFn = (req, next) => {
|
|
const authService = inject(AuthService);
|
|
const token = authService.getToken();
|
|
|
|
if (excludedUrls.some(url => req.url.includes(url))) {
|
|
return next(req);
|
|
}
|
|
|
|
if (token) {
|
|
const cloned = req.clone({
|
|
setHeaders: {
|
|
Authorization: `Bearer ${token}`
|
|
}
|
|
});
|
|
return next(cloned);
|
|
}
|
|
|
|
return next(req);
|
|
};
|