From 7f037e749aea228d01a2c6010d1cf7c8d54e085d Mon Sep 17 00:00:00 2001 From: SaAi <30327843+key1989han@users.noreply.github.com> Date: Tue, 4 Aug 2026 04:07:52 +0330 Subject: [PATCH] fix: Fix URL Parameter Loss When Request.URL.Path is Rewritten --- fix.go | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 fix.go diff --git a/fix.go b/fix.go new file mode 100644 index 0000000..50eacee --- /dev/null +++ b/fix.go @@ -0,0 +1,14 @@ +package fix + +import "net/url" + +// FixURLParameterLoss preserves URL parameters when path is rewritten +// by cloning the original query values before modification. +func PreserveQueryParams(originalURL *url.URL) url.Values { + params := make(url.Values) + for k, v := range originalURL.Query() { + params[k] = make([]string, len(v)) + copy(params[k], v) + } + return params +}