From b8926dfdabbc4ff9e874a7ffd048923627753d90 Mon Sep 17 00:00:00 2001 From: srgooglo Date: Fri, 9 Sep 2022 13:31:06 +0200 Subject: [PATCH] added `axios-retry` support --- package.json | 1 + src/client/bridge.js | 12 ++++++++++-- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/package.json b/package.json index 6c514cc..f1ee608 100755 --- a/package.json +++ b/package.json @@ -21,6 +21,7 @@ "@corenode/utils": "0.28.26", "@nanoexpress/middleware-body-parser": "^1.2.2", "axios": "0.27.2", + "axios-retry": "^3.3.1", "cors": "2.8.5", "express": "^4.18.1", "hyper-express": "^6.1.1", diff --git a/src/client/bridge.js b/src/client/bridge.js index 553b44a..4730be5 100644 --- a/src/client/bridge.js +++ b/src/client/bridge.js @@ -1,4 +1,5 @@ const axios = require("axios") +const axiosRetry = require("axios-retry") const camalize = require("@corenode/utils/dist/camalize").default const { WSInterface } = require("./classes") @@ -46,13 +47,20 @@ module.exports = class Bridge { } }) + if (this.params.enableRetry) { + axiosRetry(this.httpInterface, { + retries: this.params.onFailRetries ?? 1, + retryDelay: this.params.retryDelay ?? 0, + }) + } + return this } initialize = async () => { const instanceManifest = await this.httpInterface.get("/") - .then(res => res.data) - .catch(err => { + .then((res) => res.data) + .catch((err) => { console.error(err) throw new Error(`Could not get endpoints map from server. [${err.message}]`) })