From 26d823bd81ba9beda8555b1b2d83ed281418f61d Mon Sep 17 00:00:00 2001 From: John Guo Date: Fri, 8 Oct 2021 16:32:40 +0800 Subject: [PATCH] openapi --- protocol/goai/goai_parameter.go | 11 +++++++++-- protocol/goai/goai_path.go | 2 +- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/protocol/goai/goai_parameter.go b/protocol/goai/goai_parameter.go index df0ed60c0..e6feb3105 100644 --- a/protocol/goai/goai_parameter.go +++ b/protocol/goai/goai_parameter.go @@ -41,12 +41,19 @@ type ParameterRef struct { Value *Parameter } -func (oai *OpenApiV3) newParameterRefWithStructMethod(field *structs.Field) (*ParameterRef, error) { +func (oai *OpenApiV3) newParameterRefWithStructMethod(field *structs.Field, method string) (*ParameterRef, error) { var ( inTagValue = field.Tag(TagNameIn) ) if inTagValue == "" { - return nil, nil + // Default the parameter input to "query" if method is "GET/DELETE". + switch gstr.ToUpper(method) { + case HttpMethodGet, HttpMethodDelete: + inTagValue = ParameterInQuery + + default: + return nil, nil + } } var ( tagMap = field.TagMap() diff --git a/protocol/goai/goai_path.go b/protocol/goai/goai_path.go index d715406b3..45b005688 100644 --- a/protocol/goai/goai_path.go +++ b/protocol/goai/goai_path.go @@ -181,7 +181,7 @@ func (oai *OpenApiV3) addPath(in addPathInput) error { if operation.Parameters == nil { operation.Parameters = []ParameterRef{} } - parameterRef, err := oai.newParameterRefWithStructMethod(structField) + parameterRef, err := oai.newParameterRefWithStructMethod(structField, in.Method) if err != nil { return err }