From ec7f3484187bb4f0f20b123aa474e4d1473e36db Mon Sep 17 00:00:00 2001 From: Mxmilu666 Date: Wed, 23 Apr 2025 23:11:12 +0800 Subject: [PATCH] feat(api): return data from available services even if one backend fails --- frontend/api.go | 10 +++++++--- frontend/assets/templates/page.tpl | 6 +++--- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/frontend/api.go b/frontend/api.go index 3cd5e9e..a92b3cf 100644 --- a/frontend/api.go +++ b/frontend/api.go @@ -20,6 +20,7 @@ type apiGenericResultPair struct { type apiSummaryResultPair struct { Server string `json:"server"` Data []SummaryRowData `json:"data"` + Error string `json:"error,omitempty"` } type apiResponse struct { @@ -70,9 +71,12 @@ func apiSummaryHandler(request apiRequest) apiResponse { for i, result := range results { parsedSummary, err := summaryParse(result, request.Servers[i]) if err != nil { - return apiResponse{ - Error: err.Error(), - } + response.Result = append(response.Result, &apiSummaryResultPair{ + Server: request.Servers[i], + Data: []SummaryRowData{}, + Error: err.Error(), + }) + continue } response.Result = append(response.Result, &apiSummaryResultPair{ diff --git a/frontend/assets/templates/page.tpl b/frontend/assets/templates/page.tpl index 0bd3d05..c2275fc 100644 --- a/frontend/assets/templates/page.tpl +++ b/frontend/assets/templates/page.tpl @@ -7,7 +7,7 @@ {{ html .Title }} - +