diff --git a/NodeApp/src/managers/HttpManager.ts b/NodeApp/src/managers/HttpManager.ts index 06f3cd21c9496c86462c5d34ed522ce2894b16f0..3f5524d563b862f6f1fc98629443c6924dd2eda7 100644 --- a/NodeApp/src/managers/HttpManager.ts +++ b/NodeApp/src/managers/HttpManager.ts @@ -3,6 +3,7 @@ import Config from '../Config/Config'; import SessionManager from './SessionManager'; import FormData from 'form-data'; import logger from '../shared/logging/WinstonLogger'; +import GitlabManager from './GitlabManager'; class HttpManager { @@ -10,6 +11,8 @@ class HttpManager { public LOGIN_URL!: string; public TEST_SESSION_URL!: string; + public handleCommandErrors: boolean = true; + private static _instance: HttpManager; public static get instance(): HttpManager { @@ -21,7 +24,7 @@ class HttpManager { } private constructor() { - + } set API_BASE_URL(url: string) { @@ -60,15 +63,21 @@ class HttpManager { return response; }, (error) => { if ( error.response ) { - switch ( error.response.status ) { - case 401: // Unauthorized - logger.error('Session expired or inexistent. Please login again.'); - process.exit(1); - break; - case 403: // Forbidden - logger.error('Forbidden access.'); - process.exit(1); - break; + if ( this.handleCommandErrors ) { + if ( error.response.url && error.response.url.indexOf(Config.apiURL) !== -1 ) { + switch ( error.response.status ) { + case 401: // Unauthorized + logger.error('Session expired or inexistent. Please login again.'); + process.exit(1); + break; + case 403: // Forbidden + logger.error('Forbidden access.'); + process.exit(1); + break; + } + } + } else { + this.handleCommandErrors = true; } } else { logger.error('Error connecting to the server.');