From 612dc4dbcb8e80fa60ca37d9b50d50fa70a9612d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Rodrigo=20Cebri=C3=A1n=20Gonz=C3=A1lez?= Date: Fri, 17 Feb 2023 17:29:12 +0100 Subject: [PATCH] [BUG][Go] Remove "null" body value when body is empty #13927 (#13934) * only write reponse body if not nil * update go samples * golang style convention --- .../src/main/resources/go-server/routers.mustache | 6 +++++- samples/server/petstore/go-api-server/go/routers.go | 6 +++++- samples/server/petstore/go-chi-server/go/routers.go | 6 +++++- samples/server/petstore/go-server-required/go/routers.go | 6 +++++- 4 files changed, 20 insertions(+), 4 deletions(-) diff --git a/modules/openapi-generator/src/main/resources/go-server/routers.mustache b/modules/openapi-generator/src/main/resources/go-server/routers.mustache index 47eb32493d4c..dd17c61df845 100644 --- a/modules/openapi-generator/src/main/resources/go-server/routers.mustache +++ b/modules/openapi-generator/src/main/resources/go-server/routers.mustache @@ -108,7 +108,11 @@ func EncodeJSONResponse(i interface{}, status *int,{{#addResponseHeaders}} heade w.WriteHeader(http.StatusOK) } - return json.NewEncoder(w).Encode(i) + if i != nil { + return json.NewEncoder(w).Encode(i) + } + + return nil } // ReadFormFileToTempFile reads file data from a request form and writes it to a temporary file diff --git a/samples/server/petstore/go-api-server/go/routers.go b/samples/server/petstore/go-api-server/go/routers.go index 9c358e93b438..501ef7d89f3f 100644 --- a/samples/server/petstore/go-api-server/go/routers.go +++ b/samples/server/petstore/go-api-server/go/routers.go @@ -76,7 +76,11 @@ func EncodeJSONResponse(i interface{}, status *int, headers map[string][]string, w.WriteHeader(http.StatusOK) } - return json.NewEncoder(w).Encode(i) + if i != nil { + return json.NewEncoder(w).Encode(i) + } + + return nil } // ReadFormFileToTempFile reads file data from a request form and writes it to a temporary file diff --git a/samples/server/petstore/go-chi-server/go/routers.go b/samples/server/petstore/go-chi-server/go/routers.go index f6134e345270..1fa250656064 100644 --- a/samples/server/petstore/go-chi-server/go/routers.go +++ b/samples/server/petstore/go-chi-server/go/routers.go @@ -72,7 +72,11 @@ func EncodeJSONResponse(i interface{}, status *int, headers map[string][]string, w.WriteHeader(http.StatusOK) } - return json.NewEncoder(w).Encode(i) + if i != nil { + return json.NewEncoder(w).Encode(i) + } + + return nil } // ReadFormFileToTempFile reads file data from a request form and writes it to a temporary file diff --git a/samples/server/petstore/go-server-required/go/routers.go b/samples/server/petstore/go-server-required/go/routers.go index f6134e345270..1fa250656064 100644 --- a/samples/server/petstore/go-server-required/go/routers.go +++ b/samples/server/petstore/go-server-required/go/routers.go @@ -72,7 +72,11 @@ func EncodeJSONResponse(i interface{}, status *int, headers map[string][]string, w.WriteHeader(http.StatusOK) } - return json.NewEncoder(w).Encode(i) + if i != nil { + return json.NewEncoder(w).Encode(i) + } + + return nil } // ReadFormFileToTempFile reads file data from a request form and writes it to a temporary file