This commit is contained in:
Bruno Windels 2020-11-05 21:24:14 +01:00
parent b8370d53b6
commit 16542284f3

View file

@ -15,7 +15,7 @@ See the License for the specific language governing permissions and
limitations under the License. limitations under the License.
*/ */
import {HomeServerError} from "../error.js"; import {HomeServerError, ConnectionError} from "../error.js";
import {encodeQueryParams} from "./common.js"; import {encodeQueryParams} from "./common.js";
class RequestWrapper { class RequestWrapper {
@ -26,9 +26,10 @@ class RequestWrapper {
if (response.status >= 200 && response.status < 300) { if (response.status >= 200 && response.status < 300) {
return response.body; return response.body;
} else { } else {
switch (response.status) { if (response.status >= 400 && !response.body?.errcode) {
default: throw new ConnectionError(`HTTP error status ${response.status} without errcode in body, assume this is a load balancer complaining the server is offline.`);
throw new HomeServerError(method, url, response.body, response.status); } else {
throw new HomeServerError(method, url, response.body, response.status);
} }
} }
}); });