From 2f4fb58d02b10b6c7f7e69f6b6b21dcdca434a33 Mon Sep 17 00:00:00 2001 From: bnymncoskuner Date: Wed, 16 Sep 2020 16:18:08 +0300 Subject: [PATCH] feat: add getHeaders method to ApiInterceptor --- .../src/lib/interceptors/api.interceptor.ts | 22 +++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/npm/ng-packs/packages/core/src/lib/interceptors/api.interceptor.ts b/npm/ng-packs/packages/core/src/lib/interceptors/api.interceptor.ts index de01335058..b3f34a0524 100644 --- a/npm/ng-packs/packages/core/src/lib/interceptors/api.interceptor.ts +++ b/npm/ng-packs/packages/core/src/lib/interceptors/api.interceptor.ts @@ -15,6 +15,7 @@ export class ApiInterceptor implements HttpInterceptor { const headers = {} as any; + // TODO: utilize getHeaders method here WITH GREAT CARE! const token = this.oAuthService.getAccessToken(); if (!request.headers.has('Authorization') && token) { headers['Authorization'] = `Bearer ${token}`; @@ -38,4 +39,25 @@ export class ApiInterceptor implements HttpInterceptor { ) .pipe(finalize(() => this.store.dispatch(new StopLoader(request)))); } + + getHeaders() { + const headers = {} as any; + + const token = this.oAuthService.getAccessToken(); + if (token) { + headers['Authorization'] = `Bearer ${token}`; + } + + const lang = this.store.selectSnapshot(SessionState.getLanguage); + if (lang) { + headers['Accept-Language'] = lang; + } + + const tenant = this.store.selectSnapshot(SessionState.getTenant); + if (tenant) { + headers['__tenant'] = tenant.id; + } + + return headers; + } }