diff --git a/request/form.go b/request/form.go index 13cb846..3dc09e1 100644 --- a/request/form.go +++ b/request/form.go @@ -50,10 +50,10 @@ func (f *form) Parse(ctx *gin.Context, receiver interface{}) error { method == http.MethodTrace || method == http.MethodConnect || method == http.MethodOptions { - return ctx.ShouldBindQuery(receiver) - } - - if method == http.MethodPost || + if err := ctx.ShouldBindQuery(receiver); nil != err { + return err + } + } else if method == http.MethodPost || method == http.MethodPut || method == http.MethodDelete { if ContentType.IsJson(ctx) { @@ -67,6 +67,8 @@ func (f *form) Parse(ctx *gin.Context, receiver interface{}) error { } else { return errors.New(ctx.ContentType() + " is not support") } + } else { + return errors.New(method + " is not support") } // 设置默认值 defaults.SetDefaults(receiver)