From 6bb11ce99bfb03a17818cf4c369f33fbd410e95b Mon Sep 17 00:00:00 2001 From: Hongbo Wu Date: Mon, 1 Jul 2024 11:02:42 +0800 Subject: [PATCH] fix: returns a stub score (0) in case score api throws an error --- packages/api/src/services/score.ts | 24 +++++++++++++++++------- 1 file changed, 17 insertions(+), 7 deletions(-) diff --git a/packages/api/src/services/score.ts b/packages/api/src/services/score.ts index 256840b5c..cae0bebf0 100644 --- a/packages/api/src/services/score.ts +++ b/packages/api/src/services/score.ts @@ -1,5 +1,6 @@ import axios from 'axios' import { env } from '../env' +import { logError } from '../utils/logger' export interface Feature { library_item_id?: string @@ -63,14 +64,23 @@ class ScoreClientImpl implements ScoreClient { } async getScores(data: ScoreApiRequestBody): Promise { - const response = await axios.post(this.apiUrl, data, { - headers: { - 'Content-Type': 'application/json', - }, - timeout: 5000, - }) + try { + const response = await axios.post(this.apiUrl, data, { + headers: { + 'Content-Type': 'application/json', + }, + timeout: 5000, + }) - return response.data + return response.data + } catch (error) { + logError(error) + + // Returns a stub score (0) in case of an error + return { + [Object.keys(data.items)[0]]: { score: 0 }, + } + } } }