Remove try/catch #136
|
@ -24,17 +24,6 @@ const onRequestError = error => {
|
|||
const onResponseError = error => {
|
||||
const userStore = useUserStore();
|
||||
|
||||
let message = error.message;
|
||||
|
||||
const response = error.response;
|
||||
const responseData = response && response.data;
|
||||
const responseError = responseData && response.data.error;
|
||||
if (responseError) {
|
||||
message = responseError.message;
|
||||
}
|
||||
|
||||
notify(message, 'negative');
|
||||
|
||||
if (userStore.isLoggedIn && response?.status === 401) {
|
||||
if (!Router) return;
|
||||
|
||||
|
@ -73,6 +62,40 @@ export default boot(({ app }) => {
|
|||
// so you can easily perform requests against your app's API
|
||||
|
||||
app.config.globalProperties.$jApi = jApi;
|
||||
app.config.errorHandler = async error => {
|
||||
let message;
|
||||
const response = error.response;
|
||||
const responseData = response?.data;
|
||||
const responseError = responseData && response.data.error;
|
||||
if (responseError) {
|
||||
message = responseError.message;
|
||||
}
|
||||
|
||||
switch (response?.status) {
|
||||
case 422:
|
||||
if (error.name == 'ValidationError')
|
||||
message +=
|
||||
' "' +
|
||||
responseError.details.context +
|
||||
'.' +
|
||||
Object.keys(responseError.details.codes).join(',') +
|
||||
'"';
|
||||
break;
|
||||
case 500:
|
||||
message = 'errors.statusInternalServerError';
|
||||
break;
|
||||
case 502:
|
||||
message = 'errors.statusBadGateway';
|
||||
break;
|
||||
case 504:
|
||||
message = 'errors.statusGatewayTimeout';
|
||||
break;
|
||||
}
|
||||
|
||||
console.error(error);
|
||||
notify(message ?? 'globals.error', 'negative', 'error');
|
||||
};
|
||||
|
||||
app.provide('jApi', jApi);
|
||||
app.provide('api', api);
|
||||
});
|
||||
|
|
|
@ -137,26 +137,22 @@ export const useUserStore = defineStore('user', () => {
|
|||
};
|
||||
|
||||
const login = async (username, password, remember) => {
|
||||
try {
|
||||
const params = { user: username, password };
|
||||
const { data } = await api.post('Accounts/login', params);
|
||||
const params = { user: username, password };
|
||||
const { data } = await api.post('Accounts/login', params);
|
||||
|
||||
const multimediaToken = await fetchMultimediaToken(data);
|
||||
if (!multimediaToken) return;
|
||||
const multimediaToken = await fetchMultimediaToken(data);
|
||||
if (!multimediaToken) return;
|
||||
|
||||
keepLogin.value = remember;
|
||||
setSession({
|
||||
created: Date.now(),
|
||||
tokenMultimedia: multimediaToken.id,
|
||||
username,
|
||||
...data
|
||||
});
|
||||
await fetchTokenConfig();
|
||||
startInterval();
|
||||
await onLogin();
|
||||
} catch (error) {
|
||||
throw new Error('Error logging in');
|
||||
}
|
||||
keepLogin.value = remember;
|
||||
setSession({
|
||||
created: Date.now(),
|
||||
tokenMultimedia: multimediaToken.id,
|
||||
username,
|
||||
...data
|
||||
});
|
||||
await fetchTokenConfig();
|
||||
startInterval();
|
||||
await onLogin();
|
||||
};
|
||||
|
||||
const tryAutoLogin = async () => {
|
||||
|
@ -180,18 +176,13 @@ export const useUserStore = defineStore('user', () => {
|
|||
};
|
||||
|
||||
const fetchTokenConfig = async () => {
|
||||
try {
|
||||
const { data } = await api.get('AccessTokenConfigs/findOne', {
|
||||
filter: { fields: ['renewInterval', 'renewPeriod'] }
|
||||
});
|
||||
if (!data) return;
|
||||
tokenConfig.value = data;
|
||||
storage.value.setItem('renewPeriod', data.renewPeriod);
|
||||
return data;
|
||||
} catch (error) {
|
||||
notify('errors.tokenConfig', 'negative');
|
||||
console.error('Error fetching token config:', error);
|
||||
}
|
||||
const { data } = await api.get('AccessTokenConfigs/findOne', {
|
||||
filter: { fields: ['renewInterval', 'renewPeriod'] }
|
||||
});
|
||||
if (!data) return;
|
||||
tokenConfig.value = data;
|
||||
storage.value.setItem('renewPeriod', data.renewPeriod);
|
||||
return data;
|
||||
};
|
||||
|
||||
const renewToken = async () => {
|
||||
|
@ -247,14 +238,10 @@ export const useUserStore = defineStore('user', () => {
|
|||
};
|
||||
|
||||
const fetchUser = async (userType = 'user') => {
|
||||
try {
|
||||
const userData = await api.get('VnUsers/getCurrentUserData');
|
||||
const userData = await api.get('VnUsers/getCurrentUserData');
|
||||
|
||||
if (userType === 'user') mainUser.value = userData.data;
|
||||
else supplantedUser.value = userData.data;
|
||||
} catch (error) {
|
||||
console.error('Error fetching user: ', error);
|
||||
}
|
||||
if (userType === 'user') mainUser.value = userData.data;
|
||||
else supplantedUser.value = userData.data;
|
||||
};
|
||||
|
||||
const supplantUser = async supplantUser => {
|
||||
|
|
Loading…
Reference in New Issue