-
-
Notifications
You must be signed in to change notification settings - Fork 1k
Closed
Description
The generated code with x-oapi-codegen-extra-tags validation does not work for query params.
- Version:
github.com/oapi-codegen/oapi-codegen/v2/cmd/oapi-codegen v2.5.1
- Definition:
paths:
/v1/your/endpoint:
get:
- name: env
in: query
required: true
schema:
type: string
enum:
- dev
- live
x-oapi-codegen-extra-tags:
validate: required,oneof=dev live- Generated code:
func (siw *ServerInterfaceWrapper) GetV1YourEndpoint(w http.ResponseWriter, r *http.Request) {
// Parameter object where we will unmarshal all parameters from the context
var params GetV1YourEndpointParams
// ------------- Required query parameter "env" -------------
if paramValue := r.URL.Query().Get("env"); paramValue != "" {
} else {
siw.ErrorHandlerFunc(w, r, &RequiredParamError{ParamName: "env"})
return
}
err = runtime.BindQueryParameter("form", true, true, "env", r.URL.Query(), ¶ms.Env)
if err != nil {
siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "env", Err: err})
return
}
handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
siw.Handler. GetV1YourEndpointParams(w, r, scheduleId, params)
}))
for _, middleware := range siw.HandlerMiddlewares {
handler = middleware(handler)
}
handler.ServeHTTP(w, r)
}Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels