Skip to content

Commit dc7a246

Browse files
committed
Add URL query validator
1 parent 7000a38 commit dc7a246

File tree

1 file changed

+11
-0
lines changed

1 file changed

+11
-0
lines changed

coderd/httpapi/queryparams.go

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -121,6 +121,17 @@ func (p *QueryParamParser) UUIDs(vals url.Values, def []uuid.UUID, queryParam st
121121
})
122122
}
123123

124+
func (p *QueryParamParser) URL(vals url.Values, def *url.URL, queryParam string) *url.URL {
125+
v, err := parseQueryParam(p, vals, url.Parse, def, queryParam)
126+
if err != nil {
127+
p.Errors = append(p.Errors, codersdk.ValidationError{
128+
Field: queryParam,
129+
Detail: fmt.Sprintf("Query param %q must be a valid url: %s", queryParam, err.Error()),
130+
})
131+
}
132+
return v
133+
}
134+
124135
func (p *QueryParamParser) Time(vals url.Values, def time.Time, queryParam, layout string) time.Time {
125136
return p.timeWithMutate(vals, def, queryParam, layout, nil)
126137
}

0 commit comments

Comments
 (0)