From 040c1f6f78424a4d2b8d6954373ce4480f72ce02 Mon Sep 17 00:00:00 2001 From: yusing Date: Tue, 11 Feb 2025 09:44:23 +0800 Subject: [PATCH] fix query being duplicated --- agent/pkg/agent/config.go | 2 +- agent/pkg/handler/proxy_http.go | 8 +++++--- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/agent/pkg/agent/config.go b/agent/pkg/agent/config.go index 72f94a24..c5c5c597 100644 --- a/agent/pkg/agent/config.go +++ b/agent/pkg/agent/config.go @@ -60,7 +60,7 @@ var ( var ( HTTPProxyURL = types.MustParseURL(APIBaseURL + EndpointProxyHTTP) - HTTPProxyURLStripLen = len(HTTPProxyURL.Path) + HTTPProxyURLStripLen = len(APIEndpointBase + EndpointProxyHTTP) ) func IsDockerHostAgent(dockerHost string) bool { diff --git a/agent/pkg/handler/proxy_http.go b/agent/pkg/handler/proxy_http.go index 31876377..10cbb256 100644 --- a/agent/pkg/handler/proxy_http.go +++ b/agent/pkg/handler/proxy_http.go @@ -3,6 +3,7 @@ package handler import ( "crypto/tls" "net/http" + "net/url" "strconv" "time" @@ -24,8 +25,6 @@ func ProxyHTTP(w http.ResponseWriter, r *http.Request) { responseHeaderTimeout = 0 } - logging.Debug().Msgf("proxy http request: host=%s, isHTTPs=%t, skipTLSVerify=%t, responseHeaderTimeout=%d", host, isHTTPS, skipTLSVerify, responseHeaderTimeout) - if host == "" { http.Error(w, "missing required headers", http.StatusBadRequest) return @@ -54,6 +53,9 @@ func ProxyHTTP(w http.ResponseWriter, r *http.Request) { logging.Debug().Msgf("proxy http request: %s %s", r.Method, r.URL.String()) - rp := reverseproxy.NewReverseProxy("agent", types.NewURL(r.URL), transport) + rp := reverseproxy.NewReverseProxy("agent", types.NewURL(&url.URL{ + Scheme: scheme, + Host: host, + }), transport) rp.ServeHTTP(w, r) }