aboutsummaryrefslogtreecommitdiff
path: root/url.go
diff options
context:
space:
mode:
authorRunxi Yu <me@runxiyu.org>2025-04-01 21:42:44 +0800
committerRunxi Yu <me@runxiyu.org>2025-04-01 21:46:55 +0800
commitcf2f03ae3725453f6d16205a112263eb528607fb (patch)
tree6eb1d4b23e8570856fef3601d94b6e07847e6c0c /url.go
parentRemove unnecessary clause in the Makefile (diff)
downloadforge-cf2f03ae3725453f6d16205a112263eb528607fb.tar.gz
forge-cf2f03ae3725453f6d16205a112263eb528607fb.tar.zst
forge-cf2f03ae3725453f6d16205a112263eb528607fb.zip
LMTP: Patch handling stub
Diffstat (limited to 'url.go')
-rw-r--r--url.go11
1 files changed, 10 insertions, 1 deletions
diff --git a/url.go b/url.go
index b9c5753..ad5c8bb 100644
--- a/url.go
+++ b/url.go
@@ -51,6 +51,16 @@ func getParamRefTypeName(request *http.Request) (retRefType, retRefName string,
func parseReqURI(requestURI string) (segments []string, params url.Values, err error) {
path, paramsStr, _ := strings.Cut(requestURI, "?")
+ segments, err = pathToSegments(path)
+ if err != nil {
+ return
+ }
+
+ params, err = url.ParseQuery(paramsStr)
+ return
+}
+
+func pathToSegments(path string) (segments []string, err error) {
segments = strings.Split(strings.TrimPrefix(path, "/"), "/")
for i, segment := range segments {
@@ -60,7 +70,6 @@ func parseReqURI(requestURI string) (segments []string, params url.Values, err e
}
}
- params, err = url.ParseQuery(paramsStr)
return
}