24 lines
485 B
Go
24 lines
485 B
Go
// query_normalize.go normalizes common query values before binding.
|
|
// Layer: adapters/inbound/httpapi request pre-processing.
|
|
package httpapi
|
|
|
|
import (
|
|
"net/http"
|
|
"strings"
|
|
)
|
|
|
|
func normalizeCommonQueryValue(r *http.Request, key string) {
|
|
q := r.URL.Query()
|
|
values, ok := q[key]
|
|
if !ok || len(values) == 0 {
|
|
return
|
|
}
|
|
|
|
normalized := strings.ToLower(strings.TrimSpace(values[0]))
|
|
if normalized == values[0] {
|
|
return
|
|
}
|
|
q.Set(key, normalized)
|
|
r.URL.RawQuery = q.Encode()
|
|
}
|