Skip to content

Commit 87dda37

Browse files
yuopppYury Tinyukov
andauthored
checking query params for nil value (#1064)
Co-authored-by: Yury Tinyukov <y.tinyukov@pointpay.io>
1 parent f442b7b commit 87dda37

File tree

1 file changed

+30
-28
lines changed

1 file changed

+30
-28
lines changed

pkg/codegen/templates/client.tmpl

Lines changed: 30 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -194,36 +194,38 @@ func New{{$opid}}Request{{if .HasBody}}WithBody{{end}}(server string{{genParamAr
194194
}
195195

196196
{{if .QueryParams}}
197-
queryValues := queryURL.Query()
198-
{{range $paramIdx, $param := .QueryParams}}
199-
{{if not .Required}} if params.{{.GoName}} != nil { {{end}}
200-
{{if .IsPassThrough}}
201-
queryValues.Add("{{.ParamName}}", {{if not .Required}}*{{end}}params.{{.GoName}})
202-
{{end}}
203-
{{if .IsJson}}
204-
if queryParamBuf, err := json.Marshal({{if not .Required}}*{{end}}params.{{.GoName}}); err != nil {
205-
return nil, err
206-
} else {
207-
queryValues.Add("{{.ParamName}}", string(queryParamBuf))
208-
}
197+
if params != nil {
198+
queryValues := queryURL.Query()
199+
{{range $paramIdx, $param := .QueryParams}}
200+
{{if not .Required}} if params.{{.GoName}} != nil { {{end}}
201+
{{if .IsPassThrough}}
202+
queryValues.Add("{{.ParamName}}", {{if not .Required}}*{{end}}params.{{.GoName}})
203+
{{end}}
204+
{{if .IsJson}}
205+
if queryParamBuf, err := json.Marshal({{if not .Required}}*{{end}}params.{{.GoName}}); err != nil {
206+
return nil, err
207+
} else {
208+
queryValues.Add("{{.ParamName}}", string(queryParamBuf))
209+
}
209210

210-
{{end}}
211-
{{if .IsStyled}}
212-
if queryFrag, err := runtime.StyleParamWithLocation("{{.Style}}", {{.Explode}}, "{{.ParamName}}", runtime.ParamLocationQuery, {{if not .Required}}*{{end}}params.{{.GoName}}); err != nil {
213-
return nil, err
214-
} else if parsed, err := url.ParseQuery(queryFrag); err != nil {
215-
return nil, err
216-
} else {
217-
for k, v := range parsed {
218-
for _, v2 := range v {
219-
queryValues.Add(k, v2)
220-
}
221-
}
211+
{{end}}
212+
{{if .IsStyled}}
213+
if queryFrag, err := runtime.StyleParamWithLocation("{{.Style}}", {{.Explode}}, "{{.ParamName}}", runtime.ParamLocationQuery, {{if not .Required}}*{{end}}params.{{.GoName}}); err != nil {
214+
return nil, err
215+
} else if parsed, err := url.ParseQuery(queryFrag); err != nil {
216+
return nil, err
217+
} else {
218+
for k, v := range parsed {
219+
for _, v2 := range v {
220+
queryValues.Add(k, v2)
221+
}
222+
}
223+
}
224+
{{end}}
225+
{{if not .Required}}}{{end}}
226+
{{end}}
227+
queryURL.RawQuery = queryValues.Encode()
222228
}
223-
{{end}}
224-
{{if not .Required}}}{{end}}
225-
{{end}}
226-
queryURL.RawQuery = queryValues.Encode()
227229
{{end}}{{/* if .QueryParams */}}
228230
req, err := http.NewRequest("{{.Method}}", queryURL.String(), {{if .HasBody}}body{{else}}nil{{end}})
229231
if err != nil {

0 commit comments

Comments
 (0)