From 64eb3368b1c0f200ae08e6c8689bc29e061848e9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C3=ABl=20Minelli?= <michael@minelli.me> Date: Fri, 9 Jun 2023 18:32:36 +0200 Subject: [PATCH] HttpManager => Add possibility to disable error handling --- NodeApp/src/managers/HttpManager.ts | 29 +++++++++++++++++++---------- 1 file changed, 19 insertions(+), 10 deletions(-) diff --git a/NodeApp/src/managers/HttpManager.ts b/NodeApp/src/managers/HttpManager.ts index 06f3cd2..3f5524d 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.'); -- GitLab