95eff42dfe
Co-authored-by: Lala, Shahd <Shahd.Lala@sybit.de> Co-authored-by: shahdlala66 <shahd.lala66@gmail.com> Reviewed-on: #8
24 lines
675 B
TypeScript
24 lines
675 B
TypeScript
import { HttpInterceptorFn } from '@angular/common/http';
|
|
|
|
export const authInterceptor: HttpInterceptorFn = (req, next) => {
|
|
const token = localStorage.getItem('token');
|
|
|
|
const isProtectedEndpoint =
|
|
req.url.includes('/api/account/me') ||
|
|
req.url.includes('/api/account/bots') ||
|
|
req.url.includes('/api/account/official-bots') ||
|
|
req.url.includes('/api/board/game') ||
|
|
req.url.includes('/api/challenge') ||
|
|
req.url.includes('/api/tournament');
|
|
|
|
if (token && isProtectedEndpoint && !req.headers.has('Authorization')) {
|
|
req = req.clone({
|
|
setHeaders: {
|
|
Authorization: `Bearer ${token}`
|
|
}
|
|
});
|
|
}
|
|
|
|
return next(req);
|
|
};
|