Skip to content
Snippets Groups Projects
Commit b342e42b authored by Benedikt Heinrichs's avatar Benedikt Heinrichs
Browse files

Update: Handle LocalStorage Coscine Values (coscine/issues#1833)

parent 944a5b96
Branches
Tags
1 merge request!15Update: Handle LocalStorage Coscine Values (coscine/issues#1833)
...@@ -29,7 +29,12 @@ import { UserApiFactory } from './Coscine.Api.User/api'; ...@@ -29,7 +29,12 @@ import { UserApiFactory } from './Coscine.Api.User/api';
let accessToken = ''; let accessToken = '';
if (typeof coscine !== 'undefined' && typeof coscine.authorization !== 'undefined') { if (typeof coscine !== 'undefined' && typeof coscine.authorization !== 'undefined') {
accessToken = coscine.authorization.bearer; accessToken = 'Bearer ' + coscine.authorization.bearer;
}
// LocalStorage > Global Variables
const localStorageToken = localStorage.getItem('coscine.authorization.bearer');
if (localStorageToken) {
accessToken = 'Bearer ' + localStorageToken;
} }
const getHostName = () => { const getHostName = () => {
......
...@@ -15,27 +15,51 @@ function setHeader(request: AxiosRequestConfig) { ...@@ -15,27 +15,51 @@ function setHeader(request: AxiosRequestConfig) {
request.headers.common[clientCorrolationIdKey] = coscine.clientcorrolation.id; request.headers.common[clientCorrolationIdKey] = coscine.clientcorrolation.id;
} }
} }
// LocalStorage > Global Variables
const localStorageToken = localStorage.getItem("coscine.authorization.bearer");
if (localStorageToken) {
request.headers.common[authHeaderKey] =
'Bearer ' + localStorageToken;
}
const localStorageClientCorrelation = localStorage.getItem("coscine.clientcorrolation.id");
if (localStorageClientCorrelation) {
request.headers.common[clientCorrolationIdKey] = localStorageClientCorrelation;
}
}; };
instance.interceptors.request.use((request: AxiosRequestConfig) => { function increaseLoading() {
setHeader(request);
if ((typeof coscine !== "undefined") && (typeof coscine.loading !== "undefined") && (typeof coscine.loading.counter !== "undefined")) { if ((typeof coscine !== "undefined") && (typeof coscine.loading !== "undefined") && (typeof coscine.loading.counter !== "undefined")) {
coscine.loading.counter++; coscine.loading.counter++;
} }
const localStorageLoading = localStorage.getItem("coscine.loading.counter");
if (localStorageLoading) {
localStorage.setItem("coscine.loading.counter", String(Number(localStorageLoading) + 1));
}
}
function decreaseLoading() {
if ((typeof coscine !== "undefined") && (typeof coscine.loading !== "undefined") && (typeof coscine.loading.counter !== "undefined")) {
coscine.loading.counter--;
}
const localStorageLoading = localStorage.getItem("coscine.loading.counter");
if (localStorageLoading) {
localStorage.setItem("coscine.loading.counter", String(Number(localStorageLoading) - 1));
}
}
instance.interceptors.request.use((request: AxiosRequestConfig) => {
setHeader(request);
increaseLoading();
return request; return request;
}, (error: unknown) => { }, (error: unknown) => {
return Promise.reject(error); return Promise.reject(error);
}); });
instance.interceptors.response.use((response: AxiosRequestConfig) => { instance.interceptors.response.use((response: AxiosRequestConfig) => {
if ((typeof coscine !== "undefined") && (typeof coscine.loading !== "undefined") && (typeof coscine.loading.counter !== "undefined")) { decreaseLoading();
coscine.loading.counter--;
}
return response; return response;
}, (error: unknown) => { }, (error: unknown) => {
if ((typeof coscine !== "undefined") && (typeof coscine.loading !== "undefined") && (typeof coscine.loading.counter !== "undefined")) { decreaseLoading();
coscine.loading.counter--;
}
return Promise.reject(error); return Promise.reject(error);
}); });
......
import implementations from './apis'; import implementations from './apis';
import instance from './axios-basic'; import instance from './axios-basic';
export { implementations as apiImplementations, instance as axiosInstance };
const apis = implementations(instance); const apis = implementations(instance);
export const ActivatedFeaturesApi = apis.ActivatedFeaturesApi; export const ActivatedFeaturesApi = apis.ActivatedFeaturesApi;
......
This diff is collapsed.
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment