Add HTML POST Form support in Bind

This commit is contained in:
Dmitry Sedykh 2014-07-08 16:10:27 +04:00
parent 9880758ddb
commit a235e0fb32

15
gin.go
View File

@ -17,12 +17,13 @@ import (
) )
const ( const (
AbortIndex = math.MaxInt8 / 2 AbortIndex = math.MaxInt8 / 2
MIMEJSON = "application/json" MIMEJSON = "application/json"
MIMEHTML = "text/html" MIMEHTML = "text/html"
MIMEXML = "application/xml" MIMEXML = "application/xml"
MIMEXML2 = "text/xml" MIMEXML2 = "text/xml"
MIMEPlain = "text/plain" MIMEPlain = "text/plain"
MIMEPOSTForm = "application/x-www-form-urlencoded"
) )
const ( const (
@ -407,7 +408,7 @@ func (c *Context) Bind(obj interface{}) bool {
var b binding.Binding var b binding.Binding
ctype := filterFlags(c.Req.Header.Get("Content-Type")) ctype := filterFlags(c.Req.Header.Get("Content-Type"))
switch { switch {
case c.Req.Method == "GET": case c.Req.Method == "GET" || ctype == MIMEPOSTForm:
b = binding.Form b = binding.Form
case ctype == MIMEJSON: case ctype == MIMEJSON:
b = binding.JSON b = binding.JSON