Skip to content

Commit

Permalink
✨ : add axios interceptors to handle responses
Browse files Browse the repository at this point in the history
  • Loading branch information
cdubuisson committed Apr 9, 2020
1 parent f5c81dc commit 2ff794f
Show file tree
Hide file tree
Showing 11 changed files with 31 additions and 60 deletions.
4 changes: 4 additions & 0 deletions src/main/client/app/main.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import VueFormWizard from 'vue-form-wizard';

import fontawesomeConfig from '@/shared/config/fontawesome-config';
import bootstrapVueConfig from '@/shared/config/bootstrap-vue-config';
import axiosConfig from '@/shared/config/axios-config';

import initFilters from '@/shared/filters';

Expand All @@ -29,6 +30,9 @@ Vue.component('app-default-layout', AppDefaultLayout);
Vue.component('app-error-layout', AppErrorLayout);
Vue.component('app-none-layout', AppNoneLayout);

// axios
axiosConfig.init();

Vue.config.productionTip = false;

new Vue({
Expand Down
15 changes: 3 additions & 12 deletions src/main/client/app/shared/api/authentication-api.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,19 +2,10 @@ import axios from 'axios';

export const doLogin = async (formData) => axios.post('/auth/classic', formData);

export const listProviders = async () => {
const resp = await axios.get('/auth/providers');
return resp.data;
};
export const listProviders = async () => axios.get('/auth/providers');

export const getUser = async () => {
const resp = await axios.get('/auth/user');
return resp.data;
};
export const getUser = async () => axios.get('/auth/user');

export const getAuthorities = async () => {
const resp = await axios.get('/auth/authorities');
return resp.data;
};
export const getAuthorities = async () => axios.get('/auth/authorities');

export const doLogout = async () => axios.post('/auth/logout');
5 changes: 1 addition & 4 deletions src/main/client/app/shared/api/build-infos-api.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,3 @@
import axios from 'axios';

export const getBuildInfo = async () => {
const resp = await axios.get('/build-info');
return resp.data;
};
export const getBuildInfo = async () => axios.get('/build-info');
5 changes: 1 addition & 4 deletions src/main/client/app/shared/api/dashboard-api.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,3 @@
import axios from 'axios';

export const getSummary = async () => {
const resp = await axios.get('/api/dashboard/summary');
return resp.data;
};
export const getSummary = async () => axios.get('/api/dashboard/summary');
20 changes: 4 additions & 16 deletions src/main/client/app/shared/api/modules-api.js
Original file line number Diff line number Diff line change
@@ -1,23 +1,11 @@
import axios from 'axios';

export const getModules = async () => {
const resp = await axios.get('/api/modules');
return resp.data;
};
export const getModules = async () => axios.get('/api/modules');

export const getModule = async (moduleId) => {
const resp = await axios.get(`/api/modules/${moduleId}`);
return resp.data;
};
export const getModule = async (moduleId) => axios.get(`/api/modules/${moduleId}`);

export const getModuleReadme = async (moduleId) => {
const resp = await axios.get(`/api/modules/${moduleId}/readme`);
return resp.data;
};
export const getModuleReadme = async (moduleId) => axios.get(`/api/modules/${moduleId}/readme`);

export const updateModule = async (module) => axios.put(`/api/modules/${module.id}`, module);

export const createModule = async (module) => {
const resp = await axios.post('/api/modules', module);
return resp.data;
};
export const createModule = async (module) => axios.post('/api/modules', module);
12 changes: 4 additions & 8 deletions src/main/client/app/shared/api/registries-api.js
Original file line number Diff line number Diff line change
@@ -1,11 +1,7 @@
import axios from 'axios';

export const getRegistriesRepositories = async (registry) => {
const resp = await axios.get(`/api/registries/${registry}/repositories`);
return resp.data;
};
export const getRegistriesRepositories = async (registry) => axios.get(`/api/registries/${registry}/repositories`);

export const importRegistryRepository = async (registry, id) => {
const resp = await axios.post(`/api/registries/${registry}/repositories/${id}/import`);
return resp.data;
};
export const importRegistryRepository = async (registry, id) => axios.post(
`/api/registries/${registry}/repositories/${id}/import`,
);
5 changes: 1 addition & 4 deletions src/main/client/app/shared/api/settings-api.js
Original file line number Diff line number Diff line change
@@ -1,8 +1,5 @@
import axios from 'axios';

export const getSettings = async () => {
const resp = await axios.get('/api/settings');
return resp.data;
};
export const getSettings = async () => axios.get('/api/settings');

export const saveSettings = async (settings) => axios.put('/api/settings', settings);
5 changes: 1 addition & 4 deletions src/main/client/app/shared/api/stacks-api.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,3 @@
import axios from 'axios';

export const createStack = async (stack) => {
const resp = await axios.post('/api/stacks', stack);
return resp.data;
};
export const createStack = async (stack) => axios.post('/api/stacks', stack);
5 changes: 1 addition & 4 deletions src/main/client/app/shared/api/teams-api.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,3 @@
import axios from 'axios';

export const getTeams = async () => {
const resp = await axios.get('/api/teams');
return resp.data;
};
export const getTeams = async () => axios.get('/api/teams');
5 changes: 1 addition & 4 deletions src/main/client/app/shared/api/users-api.js
Original file line number Diff line number Diff line change
@@ -1,8 +1,5 @@
import axios from 'axios';

export const getUsers = async () => {
const resp = await axios.get('/api/users');
return resp.data;
};
export const getUsers = async () => axios.get('/api/users');

export const updateUser = async (user) => axios.put(`/api/users/${user.id}`, user);
10 changes: 10 additions & 0 deletions src/main/client/app/shared/config/axios-config.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
import axios from 'axios';

export default {
init: () => {
axios.interceptors.response.use(
(response) => response.data,
(error) => Promise.reject(error.response.data),
);
},
};

0 comments on commit 2ff794f

Please # to comment.