Integrate authInterceptor for JWT handling, update API schema with bearerAuth security, and refactor configuration to support HTTP interceptors.
This commit is contained in:
@@ -3,11 +3,16 @@ import {provideRouter} from '@angular/router';
|
|||||||
import {CookieService} from 'ngx-cookie-service';
|
import {CookieService} from 'ngx-cookie-service';
|
||||||
|
|
||||||
import {routes} from './app.routes';
|
import {routes} from './app.routes';
|
||||||
|
import {provideHttpClient, withInterceptors} from '@angular/common/http';
|
||||||
|
import {authInterceptor} from '@services/AuthInterceptor';
|
||||||
|
|
||||||
export const appConfig: ApplicationConfig = {
|
export const appConfig: ApplicationConfig = {
|
||||||
providers: [
|
providers: [
|
||||||
provideZoneChangeDetection({eventCoalescing: true}),
|
provideZoneChangeDetection({eventCoalescing: true}),
|
||||||
provideRouter(routes),
|
provideRouter(routes),
|
||||||
CookieService,
|
CookieService,
|
||||||
|
provideHttpClient(
|
||||||
|
withInterceptors([authInterceptor])
|
||||||
|
),
|
||||||
]
|
]
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -0,0 +1,19 @@
|
|||||||
|
import {HttpInterceptorFn} from '@angular/common/http';
|
||||||
|
import {inject} from '@angular/core';
|
||||||
|
import {AuthService} from '@services/auth.service';
|
||||||
|
|
||||||
|
export const authInterceptor: HttpInterceptorFn = (req, next) => {
|
||||||
|
const authService = inject(AuthService);
|
||||||
|
const jwt = authService.getJwt();
|
||||||
|
|
||||||
|
if (jwt) {
|
||||||
|
const authReq = req.clone({
|
||||||
|
setHeaders: {
|
||||||
|
Authorization: `Bearer ${jwt}`
|
||||||
|
}
|
||||||
|
});
|
||||||
|
return next(authReq);
|
||||||
|
}
|
||||||
|
|
||||||
|
return next(req);
|
||||||
|
};
|
||||||
@@ -68,6 +68,8 @@ GetUsername:
|
|||||||
- login
|
- login
|
||||||
summary: Get the username for the logged in user
|
summary: Get the username for the logged in user
|
||||||
operationId: getUsername
|
operationId: getUsername
|
||||||
|
security:
|
||||||
|
- bearerAuth: [ ]
|
||||||
responses:
|
responses:
|
||||||
'200':
|
'200':
|
||||||
description: Username retrieved
|
description: Username retrieved
|
||||||
|
|||||||
Reference in New Issue
Block a user