From 884b340c759f83a8f412abd82e902e560c56b59c Mon Sep 17 00:00:00 2001 From: Jakob Ackermann Date: Thu, 27 Aug 2020 10:55:13 +0100 Subject: [PATCH] [misc] re-level log: 403 from web goes to WARN and emit 'not authorized' Users will get redirected to the login page and will see a 'restricted' page after logging in again. See frontend: ConnectionManager.reportConnectionError --- services/real-time/app/js/WebApiManager.js | 3 +++ services/real-time/test/acceptance/js/JoinProjectTests.js | 4 +--- services/real-time/test/unit/js/WebApiManagerTests.js | 3 +-- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/services/real-time/app/js/WebApiManager.js b/services/real-time/app/js/WebApiManager.js index de293fe015..bf399eff98 100644 --- a/services/real-time/app/js/WebApiManager.js +++ b/services/real-time/app/js/WebApiManager.js @@ -8,6 +8,7 @@ const logger = require('logger-sharelatex') const { CodedError, CorruptedJoinProjectResponseError, + NotAuthorizedError, WebApiRequestFailedError } = require('./Errors') @@ -56,6 +57,8 @@ module.exports = { 'TooManyRequests' ) ) + } else if (response.statusCode === 403) { + callback(new NotAuthorizedError()) } else { callback(new WebApiRequestFailedError(response.statusCode)) } diff --git a/services/real-time/test/acceptance/js/JoinProjectTests.js b/services/real-time/test/acceptance/js/JoinProjectTests.js index 06ab8a2c5a..4c8d698fa9 100644 --- a/services/real-time/test/acceptance/js/JoinProjectTests.js +++ b/services/real-time/test/acceptance/js/JoinProjectTests.js @@ -221,9 +221,7 @@ describe('joinProject', function () { }) it('should return an error', function () { - this.error.message.should.equal( - 'Something went wrong in real-time service' - ) + this.error.message.should.equal('not authorized') }) it('should not have joined the project room', function (done) { diff --git a/services/real-time/test/unit/js/WebApiManagerTests.js b/services/real-time/test/unit/js/WebApiManagerTests.js index c2cbd3925f..0866b2b585 100644 --- a/services/real-time/test/unit/js/WebApiManagerTests.js +++ b/services/real-time/test/unit/js/WebApiManagerTests.js @@ -107,8 +107,7 @@ describe('WebApiManager', function () { this.callback .calledWith( sinon.match({ - message: 'non-success status code from web', - info: { statusCode: 403 } + message: 'not authorized' }) ) .should.equal(true)