diff --git a/misc.go b/misc.go index 0775480..c9f8377 100644 --- a/misc.go +++ b/misc.go @@ -20,16 +20,18 @@ var devflag = flagx.Bool("dev", false, "") var sequenceStart = rand.Uint32() -func MakeHttpHandlerPattern(n ...string) string { - r := "/" + path.Join(n...) +func MakeHttpHandlerPattern(n ...string) (r string) { + r = "/" + path.Join(n...) + defer func() { + for strings.Contains(r, "//") { + r = strings.ReplaceAll(r, "//", "/") + } + }() + if strings.HasSuffix(n[len(n)-1], "/") { return r + "/" } - for strings.Contains(r, "//") { - r = strings.ReplaceAll(r, "//", "/") - } - return r }