aboutsummaryrefslogtreecommitdiff
path: root/vendor/github.com/gin-gonic/gin/binding/form.go
blob: ff00b0dfd0d43be067c4a76418cd96eecfde76f9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
// Copyright 2014 Manu Martinez-Almeida.  All rights reserved.
// Use of this source code is governed by a MIT style
// license that can be found in the LICENSE file.

package binding

import "net/http"

type formBinding struct{}

func (_ formBinding) Name() string {
	return "form"
}

func (_ formBinding) Bind(req *http.Request, obj interface{}) error {
	if err := req.ParseForm(); err != nil {
		return err
	}
	req.ParseMultipartForm(32 << 10) // 32 MB
	if err := mapForm(obj, req.Form); err != nil {
		return err
	}
	return validate(obj)
}