|
@@ -362,7 +362,9 @@ func RequestParams(args string, params map[string]*Parameter) func(ctx context.C
|
|
}
|
|
}
|
|
sourceValue = value
|
|
sourceValue = value
|
|
|
|
|
|
- if param.Required && (value == "" || value == nil) {
|
|
|
|
|
|
+ emptyValue := (value == "" || value == nil)
|
|
|
|
+
|
|
|
|
+ if param.Required && emptyValue {
|
|
invalidArgument := errs.InvalidArgument()
|
|
invalidArgument := errs.InvalidArgument()
|
|
invalidArgument.Message = fmt.Sprintf(
|
|
invalidArgument.Message = fmt.Sprintf(
|
|
"ParamRequired: param '%s' in '%s'",
|
|
"ParamRequired: param '%s' in '%s'",
|
|
@@ -372,7 +374,7 @@ func RequestParams(args string, params map[string]*Parameter) func(ctx context.C
|
|
return nil, invalidArgument
|
|
return nil, invalidArgument
|
|
}
|
|
}
|
|
|
|
|
|
- if param.ConvertTo != "" {
|
|
|
|
|
|
+ if !emptyValue && param.ConvertTo != "" {
|
|
if value, err = convertValueByType(param.ConvertTo, value); err != nil {
|
|
if value, err = convertValueByType(param.ConvertTo, value); err != nil {
|
|
invalidArgument := errs.InvalidArgument()
|
|
invalidArgument := errs.InvalidArgument()
|
|
invalidArgument.Message = fmt.Sprintf(
|
|
invalidArgument.Message = fmt.Sprintf(
|