summaryrefslogtreecommitdiff
path: root/parser.go
diff options
context:
space:
mode:
authorEltrac <hi@guhub.cn>2025-12-03 15:46:30 +0800
committerGitHub <noreply@github.com>2025-12-03 15:46:30 +0800
commit264ab718015da27d97a7f7ac4132b1e061f9d8d9 (patch)
tree9653faea7dd4e742c2d65fb7f758f3ebf9239a67 /parser.go
parenta206d80e51372dffcb86b6fcd2be3c8e24517c5c (diff)
parentf2103d4182acde938572c16753f8752c1f811fbf (diff)
Merge pull request #1 from BigCoke233/fix-empty-params
refactor, fix: use vanilla `request.URL.Query()` instead of a custom parser
Diffstat (limited to 'parser.go')
-rw-r--r--parser.go55
1 files changed, 0 insertions, 55 deletions
diff --git a/parser.go b/parser.go
deleted file mode 100644
index 87b06d0..0000000
--- a/parser.go
+++ /dev/null
@@ -1,55 +0,0 @@
-package growel
-
-import (
- "fmt"
- "strings"
-)
-
-func ParsePath(path string) ([]string, map[string]string) {
- var query_str string
- path, query_str = extractQueryStr(path)
-
- parts := splitPath(path)
-
- if len(parts) == 0 {
- return parts, map[string]string{}
- }
-
- query := parseQueryStr(query_str)
-
- return parts, query
-}
-
-func splitPath(path string) []string {
- return strings.Split(strings.Trim(path, "/"), "/")
-}
-
-func extractQueryStr(str string) (path string, querystr string) {
- str_slice := strings.Split(str, "?")
- leng := len(str_slice)
- if leng > 2 {
- fmt.Println("Error parsing path: multiple '?' found.")
- // return anyway
- } else if leng == 1 {
- // no query string found
- return str_slice[0], ""
- }
- return str_slice[0], str_slice[1]
-}
-
-func parseQueryStr(str string) map[string]string {
- query := make(map[string]string)
- if str == "" {
- return query
- }
- pairs := strings.Split(str, "&")
- for _, pair := range pairs {
- kv := strings.Split(pair, "=")
- if len(kv) != 2 {
- fmt.Println("Error parsing query string: invalid key-value pair.")
- continue
- }
- query[kv[0]] = kv[1]
- }
- return query
-}