From bd2a672c12c508db016ddd4130f8695e216eed37 Mon Sep 17 00:00:00 2001 From: MaysWind Date: Fri, 21 Feb 2025 00:17:15 +0800 Subject: [PATCH] do not set custom user agent for IMF exchange rate data source --- pkg/api/exchange_rates.go | 7 ++++++- .../international_monetary_fund_datasource.go | 2 ++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/pkg/api/exchange_rates.go b/pkg/api/exchange_rates.go index 39537073..74e61795 100644 --- a/pkg/api/exchange_rates.go +++ b/pkg/api/exchange_rates.go @@ -66,7 +66,12 @@ func (a *ExchangeRatesApi) LatestExchangeRateHandler(c *core.WebContext) (any, * for i := 0; i < len(requests); i++ { req := requests[i] - req.Header.Set("User-Agent", fmt.Sprintf("ezBookkeeping/%s", settings.Version)) + + if len(req.Header.Values("User-Agent")) < 1 { + req.Header.Set("User-Agent", fmt.Sprintf("ezBookkeeping/%s", settings.Version)) + } else if req.Header.Get("User-Agent") == "" { + req.Header.Del("User-Agent") + } resp, err := client.Do(req) diff --git a/pkg/exchangerates/international_monetary_fund_datasource.go b/pkg/exchangerates/international_monetary_fund_datasource.go index 6fb13d58..f05a74ba 100644 --- a/pkg/exchangerates/international_monetary_fund_datasource.go +++ b/pkg/exchangerates/international_monetary_fund_datasource.go @@ -80,6 +80,8 @@ func (e *InternationalMonetaryFundDataSource) BuildRequests() ([]*http.Request, return nil, err } + req.Header.Set("User-Agent", "") // Do not set custom user agent + return []*http.Request{req}, nil }