From 149dcd3b5f644de74f98b6871cfc4a7247f4508d Mon Sep 17 00:00:00 2001 From: Alex Kucksdorf Date: Wed, 13 Sep 2023 15:01:05 +0200 Subject: [PATCH 1/4] fix(go-server): Allow optional request bodies Closes #16578 --- .../src/main/resources/go-server/controller-api.mustache | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/modules/openapi-generator/src/main/resources/go-server/controller-api.mustache b/modules/openapi-generator/src/main/resources/go-server/controller-api.mustache index 5a26f587d662..eb003004552c 100644 --- a/modules/openapi-generator/src/main/resources/go-server/controller-api.mustache +++ b/modules/openapi-generator/src/main/resources/go-server/controller-api.mustache @@ -3,6 +3,12 @@ package {{packageName}} import ( "encoding/json" + {{#isBodyParam}} + {{^required}} + "errors" + "io" + {{/required}} + {{/isBodyParam}} "net/http" "strings" @@ -403,7 +409,7 @@ func (c *{{classname}}Controller) {{nickname}}(w http.ResponseWriter, r *http.Re {{^isAdditionalPropertiesTrue}} d.DisallowUnknownFields() {{/isAdditionalPropertiesTrue}} - if err := d.Decode(&{{paramName}}Param); err != nil { + if err := d.Decode(&{{paramName}}Param); err != nil {{^required}}&& !errors.Is(err, io.ErrUnexpectedEOF){{/required}} { c.errorHandler(w, r, &ParsingError{Err: err}, nil) return } From 08e86162b5be640b46ea2b1561c709476be085c3 Mon Sep 17 00:00:00 2001 From: Alex Kucksdorf Date: Wed, 13 Sep 2023 15:10:45 +0200 Subject: [PATCH 2/4] chore: Run scripts --- .../openapi3/server/petstore/go/go-petstore/go/api_pet.go | 4 ++-- .../server/petstore/go/go-petstore/go/api_store.go | 2 +- .../server/petstore/go/go-petstore/go/api_user.go | 8 ++++---- samples/server/petstore/go-api-server/go/api_pet.go | 4 ++-- samples/server/petstore/go-api-server/go/api_store.go | 2 +- samples/server/petstore/go-api-server/go/api_user.go | 8 ++++---- samples/server/petstore/go-chi-server/go/api_pet.go | 4 ++-- samples/server/petstore/go-chi-server/go/api_store.go | 2 +- samples/server/petstore/go-chi-server/go/api_user.go | 8 ++++---- 9 files changed, 21 insertions(+), 21 deletions(-) diff --git a/samples/openapi3/server/petstore/go/go-petstore/go/api_pet.go b/samples/openapi3/server/petstore/go/go-petstore/go/api_pet.go index 0efd81a77e9f..91c58bd8fa0d 100644 --- a/samples/openapi3/server/petstore/go/go-petstore/go/api_pet.go +++ b/samples/openapi3/server/petstore/go/go-petstore/go/api_pet.go @@ -98,7 +98,7 @@ func (c *PetAPIController) AddPet(w http.ResponseWriter, r *http.Request) { petParam := Pet{} d := json.NewDecoder(r.Body) d.DisallowUnknownFields() - if err := d.Decode(&petParam); err != nil { + if err := d.Decode(&petParam); err != nil { c.errorHandler(w, r, &ParsingError{Err: err}, nil) return } @@ -195,7 +195,7 @@ func (c *PetAPIController) UpdatePet(w http.ResponseWriter, r *http.Request) { petParam := Pet{} d := json.NewDecoder(r.Body) d.DisallowUnknownFields() - if err := d.Decode(&petParam); err != nil { + if err := d.Decode(&petParam); err != nil { c.errorHandler(w, r, &ParsingError{Err: err}, nil) return } diff --git a/samples/openapi3/server/petstore/go/go-petstore/go/api_store.go b/samples/openapi3/server/petstore/go/go-petstore/go/api_store.go index 7b131249078c..0b7a825ee50f 100644 --- a/samples/openapi3/server/petstore/go/go-petstore/go/api_store.go +++ b/samples/openapi3/server/petstore/go/go-petstore/go/api_store.go @@ -125,7 +125,7 @@ func (c *StoreAPIController) PlaceOrder(w http.ResponseWriter, r *http.Request) orderParam := Order{} d := json.NewDecoder(r.Body) d.DisallowUnknownFields() - if err := d.Decode(&orderParam); err != nil { + if err := d.Decode(&orderParam); err != nil { c.errorHandler(w, r, &ParsingError{Err: err}, nil) return } diff --git a/samples/openapi3/server/petstore/go/go-petstore/go/api_user.go b/samples/openapi3/server/petstore/go/go-petstore/go/api_user.go index 45b17d50303c..b5f35d32baef 100644 --- a/samples/openapi3/server/petstore/go/go-petstore/go/api_user.go +++ b/samples/openapi3/server/petstore/go/go-petstore/go/api_user.go @@ -98,7 +98,7 @@ func (c *UserAPIController) CreateUser(w http.ResponseWriter, r *http.Request) { userParam := User{} d := json.NewDecoder(r.Body) d.DisallowUnknownFields() - if err := d.Decode(&userParam); err != nil { + if err := d.Decode(&userParam); err != nil { c.errorHandler(w, r, &ParsingError{Err: err}, nil) return } @@ -125,7 +125,7 @@ func (c *UserAPIController) CreateUsersWithArrayInput(w http.ResponseWriter, r * userParam := []User{} d := json.NewDecoder(r.Body) d.DisallowUnknownFields() - if err := d.Decode(&userParam); err != nil { + if err := d.Decode(&userParam); err != nil { c.errorHandler(w, r, &ParsingError{Err: err}, nil) return } @@ -150,7 +150,7 @@ func (c *UserAPIController) CreateUsersWithListInput(w http.ResponseWriter, r *h userParam := []User{} d := json.NewDecoder(r.Body) d.DisallowUnknownFields() - if err := d.Decode(&userParam); err != nil { + if err := d.Decode(&userParam); err != nil { c.errorHandler(w, r, &ParsingError{Err: err}, nil) return } @@ -278,7 +278,7 @@ func (c *UserAPIController) UpdateUser(w http.ResponseWriter, r *http.Request) { userParam := User{} d := json.NewDecoder(r.Body) d.DisallowUnknownFields() - if err := d.Decode(&userParam); err != nil { + if err := d.Decode(&userParam); err != nil { c.errorHandler(w, r, &ParsingError{Err: err}, nil) return } diff --git a/samples/server/petstore/go-api-server/go/api_pet.go b/samples/server/petstore/go-api-server/go/api_pet.go index 0161ba41d6cf..39f0496a2342 100644 --- a/samples/server/petstore/go-api-server/go/api_pet.go +++ b/samples/server/petstore/go-api-server/go/api_pet.go @@ -98,7 +98,7 @@ func (c *PetAPIController) AddPet(w http.ResponseWriter, r *http.Request) { petParam := Pet{} d := json.NewDecoder(r.Body) d.DisallowUnknownFields() - if err := d.Decode(&petParam); err != nil { + if err := d.Decode(&petParam); err != nil { c.errorHandler(w, r, &ParsingError{Err: err}, nil) return } @@ -197,7 +197,7 @@ func (c *PetAPIController) UpdatePet(w http.ResponseWriter, r *http.Request) { petParam := Pet{} d := json.NewDecoder(r.Body) d.DisallowUnknownFields() - if err := d.Decode(&petParam); err != nil { + if err := d.Decode(&petParam); err != nil { c.errorHandler(w, r, &ParsingError{Err: err}, nil) return } diff --git a/samples/server/petstore/go-api-server/go/api_store.go b/samples/server/petstore/go-api-server/go/api_store.go index df87b17defa6..9cf083de81e7 100644 --- a/samples/server/petstore/go-api-server/go/api_store.go +++ b/samples/server/petstore/go-api-server/go/api_store.go @@ -127,7 +127,7 @@ func (c *StoreAPIController) PlaceOrder(w http.ResponseWriter, r *http.Request) orderParam := Order{} d := json.NewDecoder(r.Body) d.DisallowUnknownFields() - if err := d.Decode(&orderParam); err != nil { + if err := d.Decode(&orderParam); err != nil { c.errorHandler(w, r, &ParsingError{Err: err}, nil) return } diff --git a/samples/server/petstore/go-api-server/go/api_user.go b/samples/server/petstore/go-api-server/go/api_user.go index cb2aff7dd434..4a9fc91a6b42 100644 --- a/samples/server/petstore/go-api-server/go/api_user.go +++ b/samples/server/petstore/go-api-server/go/api_user.go @@ -98,7 +98,7 @@ func (c *UserAPIController) CreateUser(w http.ResponseWriter, r *http.Request) { userParam := User{} d := json.NewDecoder(r.Body) d.DisallowUnknownFields() - if err := d.Decode(&userParam); err != nil { + if err := d.Decode(&userParam); err != nil { c.errorHandler(w, r, &ParsingError{Err: err}, nil) return } @@ -125,7 +125,7 @@ func (c *UserAPIController) CreateUsersWithArrayInput(w http.ResponseWriter, r * userParam := []User{} d := json.NewDecoder(r.Body) d.DisallowUnknownFields() - if err := d.Decode(&userParam); err != nil { + if err := d.Decode(&userParam); err != nil { c.errorHandler(w, r, &ParsingError{Err: err}, nil) return } @@ -150,7 +150,7 @@ func (c *UserAPIController) CreateUsersWithListInput(w http.ResponseWriter, r *h userParam := []User{} d := json.NewDecoder(r.Body) d.DisallowUnknownFields() - if err := d.Decode(&userParam); err != nil { + if err := d.Decode(&userParam); err != nil { c.errorHandler(w, r, &ParsingError{Err: err}, nil) return } @@ -249,7 +249,7 @@ func (c *UserAPIController) UpdateUser(w http.ResponseWriter, r *http.Request) { userParam := User{} d := json.NewDecoder(r.Body) d.DisallowUnknownFields() - if err := d.Decode(&userParam); err != nil { + if err := d.Decode(&userParam); err != nil { c.errorHandler(w, r, &ParsingError{Err: err}, nil) return } diff --git a/samples/server/petstore/go-chi-server/go/api_pet.go b/samples/server/petstore/go-chi-server/go/api_pet.go index 0efd81a77e9f..91c58bd8fa0d 100644 --- a/samples/server/petstore/go-chi-server/go/api_pet.go +++ b/samples/server/petstore/go-chi-server/go/api_pet.go @@ -98,7 +98,7 @@ func (c *PetAPIController) AddPet(w http.ResponseWriter, r *http.Request) { petParam := Pet{} d := json.NewDecoder(r.Body) d.DisallowUnknownFields() - if err := d.Decode(&petParam); err != nil { + if err := d.Decode(&petParam); err != nil { c.errorHandler(w, r, &ParsingError{Err: err}, nil) return } @@ -195,7 +195,7 @@ func (c *PetAPIController) UpdatePet(w http.ResponseWriter, r *http.Request) { petParam := Pet{} d := json.NewDecoder(r.Body) d.DisallowUnknownFields() - if err := d.Decode(&petParam); err != nil { + if err := d.Decode(&petParam); err != nil { c.errorHandler(w, r, &ParsingError{Err: err}, nil) return } diff --git a/samples/server/petstore/go-chi-server/go/api_store.go b/samples/server/petstore/go-chi-server/go/api_store.go index 7b131249078c..0b7a825ee50f 100644 --- a/samples/server/petstore/go-chi-server/go/api_store.go +++ b/samples/server/petstore/go-chi-server/go/api_store.go @@ -125,7 +125,7 @@ func (c *StoreAPIController) PlaceOrder(w http.ResponseWriter, r *http.Request) orderParam := Order{} d := json.NewDecoder(r.Body) d.DisallowUnknownFields() - if err := d.Decode(&orderParam); err != nil { + if err := d.Decode(&orderParam); err != nil { c.errorHandler(w, r, &ParsingError{Err: err}, nil) return } diff --git a/samples/server/petstore/go-chi-server/go/api_user.go b/samples/server/petstore/go-chi-server/go/api_user.go index 8cfdb13a4a6b..b2a2787c628e 100644 --- a/samples/server/petstore/go-chi-server/go/api_user.go +++ b/samples/server/petstore/go-chi-server/go/api_user.go @@ -98,7 +98,7 @@ func (c *UserAPIController) CreateUser(w http.ResponseWriter, r *http.Request) { userParam := User{} d := json.NewDecoder(r.Body) d.DisallowUnknownFields() - if err := d.Decode(&userParam); err != nil { + if err := d.Decode(&userParam); err != nil { c.errorHandler(w, r, &ParsingError{Err: err}, nil) return } @@ -125,7 +125,7 @@ func (c *UserAPIController) CreateUsersWithArrayInput(w http.ResponseWriter, r * userParam := []User{} d := json.NewDecoder(r.Body) d.DisallowUnknownFields() - if err := d.Decode(&userParam); err != nil { + if err := d.Decode(&userParam); err != nil { c.errorHandler(w, r, &ParsingError{Err: err}, nil) return } @@ -150,7 +150,7 @@ func (c *UserAPIController) CreateUsersWithListInput(w http.ResponseWriter, r *h userParam := []User{} d := json.NewDecoder(r.Body) d.DisallowUnknownFields() - if err := d.Decode(&userParam); err != nil { + if err := d.Decode(&userParam); err != nil { c.errorHandler(w, r, &ParsingError{Err: err}, nil) return } @@ -246,7 +246,7 @@ func (c *UserAPIController) UpdateUser(w http.ResponseWriter, r *http.Request) { userParam := User{} d := json.NewDecoder(r.Body) d.DisallowUnknownFields() - if err := d.Decode(&userParam); err != nil { + if err := d.Decode(&userParam); err != nil { c.errorHandler(w, r, &ParsingError{Err: err}, nil) return } From 7ec45681a3d31bfe88c3827c01cfa92eaa1411bb Mon Sep 17 00:00:00 2001 From: Alex Kucksdorf Date: Wed, 13 Sep 2023 15:19:18 +0200 Subject: [PATCH 3/4] chore: Remove unnecessary whitespace change --- .../src/main/resources/go-server/controller-api.mustache | 2 +- .../openapi3/server/petstore/go/go-petstore/go/api_pet.go | 4 ++-- .../server/petstore/go/go-petstore/go/api_store.go | 2 +- .../server/petstore/go/go-petstore/go/api_user.go | 8 ++++---- samples/server/petstore/go-api-server/go/api_pet.go | 4 ++-- samples/server/petstore/go-api-server/go/api_store.go | 2 +- samples/server/petstore/go-api-server/go/api_user.go | 8 ++++---- samples/server/petstore/go-chi-server/go/api_pet.go | 4 ++-- samples/server/petstore/go-chi-server/go/api_store.go | 2 +- samples/server/petstore/go-chi-server/go/api_user.go | 8 ++++---- 10 files changed, 22 insertions(+), 22 deletions(-) diff --git a/modules/openapi-generator/src/main/resources/go-server/controller-api.mustache b/modules/openapi-generator/src/main/resources/go-server/controller-api.mustache index eb003004552c..3e0abf92f4b7 100644 --- a/modules/openapi-generator/src/main/resources/go-server/controller-api.mustache +++ b/modules/openapi-generator/src/main/resources/go-server/controller-api.mustache @@ -409,7 +409,7 @@ func (c *{{classname}}Controller) {{nickname}}(w http.ResponseWriter, r *http.Re {{^isAdditionalPropertiesTrue}} d.DisallowUnknownFields() {{/isAdditionalPropertiesTrue}} - if err := d.Decode(&{{paramName}}Param); err != nil {{^required}}&& !errors.Is(err, io.ErrUnexpectedEOF){{/required}} { + if err := d.Decode(&{{paramName}}Param); err != nil {{^required}}&& !errors.Is(err, io.ErrUnexpectedEOF) {{/required}}{ c.errorHandler(w, r, &ParsingError{Err: err}, nil) return } diff --git a/samples/openapi3/server/petstore/go/go-petstore/go/api_pet.go b/samples/openapi3/server/petstore/go/go-petstore/go/api_pet.go index 91c58bd8fa0d..0efd81a77e9f 100644 --- a/samples/openapi3/server/petstore/go/go-petstore/go/api_pet.go +++ b/samples/openapi3/server/petstore/go/go-petstore/go/api_pet.go @@ -98,7 +98,7 @@ func (c *PetAPIController) AddPet(w http.ResponseWriter, r *http.Request) { petParam := Pet{} d := json.NewDecoder(r.Body) d.DisallowUnknownFields() - if err := d.Decode(&petParam); err != nil { + if err := d.Decode(&petParam); err != nil { c.errorHandler(w, r, &ParsingError{Err: err}, nil) return } @@ -195,7 +195,7 @@ func (c *PetAPIController) UpdatePet(w http.ResponseWriter, r *http.Request) { petParam := Pet{} d := json.NewDecoder(r.Body) d.DisallowUnknownFields() - if err := d.Decode(&petParam); err != nil { + if err := d.Decode(&petParam); err != nil { c.errorHandler(w, r, &ParsingError{Err: err}, nil) return } diff --git a/samples/openapi3/server/petstore/go/go-petstore/go/api_store.go b/samples/openapi3/server/petstore/go/go-petstore/go/api_store.go index 0b7a825ee50f..7b131249078c 100644 --- a/samples/openapi3/server/petstore/go/go-petstore/go/api_store.go +++ b/samples/openapi3/server/petstore/go/go-petstore/go/api_store.go @@ -125,7 +125,7 @@ func (c *StoreAPIController) PlaceOrder(w http.ResponseWriter, r *http.Request) orderParam := Order{} d := json.NewDecoder(r.Body) d.DisallowUnknownFields() - if err := d.Decode(&orderParam); err != nil { + if err := d.Decode(&orderParam); err != nil { c.errorHandler(w, r, &ParsingError{Err: err}, nil) return } diff --git a/samples/openapi3/server/petstore/go/go-petstore/go/api_user.go b/samples/openapi3/server/petstore/go/go-petstore/go/api_user.go index b5f35d32baef..45b17d50303c 100644 --- a/samples/openapi3/server/petstore/go/go-petstore/go/api_user.go +++ b/samples/openapi3/server/petstore/go/go-petstore/go/api_user.go @@ -98,7 +98,7 @@ func (c *UserAPIController) CreateUser(w http.ResponseWriter, r *http.Request) { userParam := User{} d := json.NewDecoder(r.Body) d.DisallowUnknownFields() - if err := d.Decode(&userParam); err != nil { + if err := d.Decode(&userParam); err != nil { c.errorHandler(w, r, &ParsingError{Err: err}, nil) return } @@ -125,7 +125,7 @@ func (c *UserAPIController) CreateUsersWithArrayInput(w http.ResponseWriter, r * userParam := []User{} d := json.NewDecoder(r.Body) d.DisallowUnknownFields() - if err := d.Decode(&userParam); err != nil { + if err := d.Decode(&userParam); err != nil { c.errorHandler(w, r, &ParsingError{Err: err}, nil) return } @@ -150,7 +150,7 @@ func (c *UserAPIController) CreateUsersWithListInput(w http.ResponseWriter, r *h userParam := []User{} d := json.NewDecoder(r.Body) d.DisallowUnknownFields() - if err := d.Decode(&userParam); err != nil { + if err := d.Decode(&userParam); err != nil { c.errorHandler(w, r, &ParsingError{Err: err}, nil) return } @@ -278,7 +278,7 @@ func (c *UserAPIController) UpdateUser(w http.ResponseWriter, r *http.Request) { userParam := User{} d := json.NewDecoder(r.Body) d.DisallowUnknownFields() - if err := d.Decode(&userParam); err != nil { + if err := d.Decode(&userParam); err != nil { c.errorHandler(w, r, &ParsingError{Err: err}, nil) return } diff --git a/samples/server/petstore/go-api-server/go/api_pet.go b/samples/server/petstore/go-api-server/go/api_pet.go index 39f0496a2342..0161ba41d6cf 100644 --- a/samples/server/petstore/go-api-server/go/api_pet.go +++ b/samples/server/petstore/go-api-server/go/api_pet.go @@ -98,7 +98,7 @@ func (c *PetAPIController) AddPet(w http.ResponseWriter, r *http.Request) { petParam := Pet{} d := json.NewDecoder(r.Body) d.DisallowUnknownFields() - if err := d.Decode(&petParam); err != nil { + if err := d.Decode(&petParam); err != nil { c.errorHandler(w, r, &ParsingError{Err: err}, nil) return } @@ -197,7 +197,7 @@ func (c *PetAPIController) UpdatePet(w http.ResponseWriter, r *http.Request) { petParam := Pet{} d := json.NewDecoder(r.Body) d.DisallowUnknownFields() - if err := d.Decode(&petParam); err != nil { + if err := d.Decode(&petParam); err != nil { c.errorHandler(w, r, &ParsingError{Err: err}, nil) return } diff --git a/samples/server/petstore/go-api-server/go/api_store.go b/samples/server/petstore/go-api-server/go/api_store.go index 9cf083de81e7..df87b17defa6 100644 --- a/samples/server/petstore/go-api-server/go/api_store.go +++ b/samples/server/petstore/go-api-server/go/api_store.go @@ -127,7 +127,7 @@ func (c *StoreAPIController) PlaceOrder(w http.ResponseWriter, r *http.Request) orderParam := Order{} d := json.NewDecoder(r.Body) d.DisallowUnknownFields() - if err := d.Decode(&orderParam); err != nil { + if err := d.Decode(&orderParam); err != nil { c.errorHandler(w, r, &ParsingError{Err: err}, nil) return } diff --git a/samples/server/petstore/go-api-server/go/api_user.go b/samples/server/petstore/go-api-server/go/api_user.go index 4a9fc91a6b42..cb2aff7dd434 100644 --- a/samples/server/petstore/go-api-server/go/api_user.go +++ b/samples/server/petstore/go-api-server/go/api_user.go @@ -98,7 +98,7 @@ func (c *UserAPIController) CreateUser(w http.ResponseWriter, r *http.Request) { userParam := User{} d := json.NewDecoder(r.Body) d.DisallowUnknownFields() - if err := d.Decode(&userParam); err != nil { + if err := d.Decode(&userParam); err != nil { c.errorHandler(w, r, &ParsingError{Err: err}, nil) return } @@ -125,7 +125,7 @@ func (c *UserAPIController) CreateUsersWithArrayInput(w http.ResponseWriter, r * userParam := []User{} d := json.NewDecoder(r.Body) d.DisallowUnknownFields() - if err := d.Decode(&userParam); err != nil { + if err := d.Decode(&userParam); err != nil { c.errorHandler(w, r, &ParsingError{Err: err}, nil) return } @@ -150,7 +150,7 @@ func (c *UserAPIController) CreateUsersWithListInput(w http.ResponseWriter, r *h userParam := []User{} d := json.NewDecoder(r.Body) d.DisallowUnknownFields() - if err := d.Decode(&userParam); err != nil { + if err := d.Decode(&userParam); err != nil { c.errorHandler(w, r, &ParsingError{Err: err}, nil) return } @@ -249,7 +249,7 @@ func (c *UserAPIController) UpdateUser(w http.ResponseWriter, r *http.Request) { userParam := User{} d := json.NewDecoder(r.Body) d.DisallowUnknownFields() - if err := d.Decode(&userParam); err != nil { + if err := d.Decode(&userParam); err != nil { c.errorHandler(w, r, &ParsingError{Err: err}, nil) return } diff --git a/samples/server/petstore/go-chi-server/go/api_pet.go b/samples/server/petstore/go-chi-server/go/api_pet.go index 91c58bd8fa0d..0efd81a77e9f 100644 --- a/samples/server/petstore/go-chi-server/go/api_pet.go +++ b/samples/server/petstore/go-chi-server/go/api_pet.go @@ -98,7 +98,7 @@ func (c *PetAPIController) AddPet(w http.ResponseWriter, r *http.Request) { petParam := Pet{} d := json.NewDecoder(r.Body) d.DisallowUnknownFields() - if err := d.Decode(&petParam); err != nil { + if err := d.Decode(&petParam); err != nil { c.errorHandler(w, r, &ParsingError{Err: err}, nil) return } @@ -195,7 +195,7 @@ func (c *PetAPIController) UpdatePet(w http.ResponseWriter, r *http.Request) { petParam := Pet{} d := json.NewDecoder(r.Body) d.DisallowUnknownFields() - if err := d.Decode(&petParam); err != nil { + if err := d.Decode(&petParam); err != nil { c.errorHandler(w, r, &ParsingError{Err: err}, nil) return } diff --git a/samples/server/petstore/go-chi-server/go/api_store.go b/samples/server/petstore/go-chi-server/go/api_store.go index 0b7a825ee50f..7b131249078c 100644 --- a/samples/server/petstore/go-chi-server/go/api_store.go +++ b/samples/server/petstore/go-chi-server/go/api_store.go @@ -125,7 +125,7 @@ func (c *StoreAPIController) PlaceOrder(w http.ResponseWriter, r *http.Request) orderParam := Order{} d := json.NewDecoder(r.Body) d.DisallowUnknownFields() - if err := d.Decode(&orderParam); err != nil { + if err := d.Decode(&orderParam); err != nil { c.errorHandler(w, r, &ParsingError{Err: err}, nil) return } diff --git a/samples/server/petstore/go-chi-server/go/api_user.go b/samples/server/petstore/go-chi-server/go/api_user.go index b2a2787c628e..8cfdb13a4a6b 100644 --- a/samples/server/petstore/go-chi-server/go/api_user.go +++ b/samples/server/petstore/go-chi-server/go/api_user.go @@ -98,7 +98,7 @@ func (c *UserAPIController) CreateUser(w http.ResponseWriter, r *http.Request) { userParam := User{} d := json.NewDecoder(r.Body) d.DisallowUnknownFields() - if err := d.Decode(&userParam); err != nil { + if err := d.Decode(&userParam); err != nil { c.errorHandler(w, r, &ParsingError{Err: err}, nil) return } @@ -125,7 +125,7 @@ func (c *UserAPIController) CreateUsersWithArrayInput(w http.ResponseWriter, r * userParam := []User{} d := json.NewDecoder(r.Body) d.DisallowUnknownFields() - if err := d.Decode(&userParam); err != nil { + if err := d.Decode(&userParam); err != nil { c.errorHandler(w, r, &ParsingError{Err: err}, nil) return } @@ -150,7 +150,7 @@ func (c *UserAPIController) CreateUsersWithListInput(w http.ResponseWriter, r *h userParam := []User{} d := json.NewDecoder(r.Body) d.DisallowUnknownFields() - if err := d.Decode(&userParam); err != nil { + if err := d.Decode(&userParam); err != nil { c.errorHandler(w, r, &ParsingError{Err: err}, nil) return } @@ -246,7 +246,7 @@ func (c *UserAPIController) UpdateUser(w http.ResponseWriter, r *http.Request) { userParam := User{} d := json.NewDecoder(r.Body) d.DisallowUnknownFields() - if err := d.Decode(&userParam); err != nil { + if err := d.Decode(&userParam); err != nil { c.errorHandler(w, r, &ParsingError{Err: err}, nil) return } From e56d3923d628e19a200059ed867a33d540546969 Mon Sep 17 00:00:00 2001 From: Alex Kucksdorf Date: Wed, 13 Sep 2023 15:31:40 +0200 Subject: [PATCH 4/4] fix: Use correct error --- .../src/main/resources/go-server/controller-api.mustache | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/openapi-generator/src/main/resources/go-server/controller-api.mustache b/modules/openapi-generator/src/main/resources/go-server/controller-api.mustache index 3e0abf92f4b7..00fec257d6e8 100644 --- a/modules/openapi-generator/src/main/resources/go-server/controller-api.mustache +++ b/modules/openapi-generator/src/main/resources/go-server/controller-api.mustache @@ -409,7 +409,7 @@ func (c *{{classname}}Controller) {{nickname}}(w http.ResponseWriter, r *http.Re {{^isAdditionalPropertiesTrue}} d.DisallowUnknownFields() {{/isAdditionalPropertiesTrue}} - if err := d.Decode(&{{paramName}}Param); err != nil {{^required}}&& !errors.Is(err, io.ErrUnexpectedEOF) {{/required}}{ + if err := d.Decode(&{{paramName}}Param); err != nil {{^required}}&& !errors.Is(err, io.EOF) {{/required}}{ c.errorHandler(w, r, &ParsingError{Err: err}, nil) return }