1
0
mirror of https://github.com/astaxie/beego.git synced 2024-11-26 18:41:29 +00:00

context: fix multipart/form-data

This commit is contained in:
astaxie 2014-04-15 05:02:50 +08:00
parent 6c6e4ecfbc
commit f9b8617fa3

View File

@ -274,19 +274,13 @@ func (input *BeegoInput) SetData(key, val interface{}) {
// parseForm or parseMultiForm based on Content-type // parseForm or parseMultiForm based on Content-type
func (input *BeegoInput) ParseFormOrMulitForm(maxMemory int64) error { func (input *BeegoInput) ParseFormOrMulitForm(maxMemory int64) error {
// Parse the body depending on the content type. // Parse the body depending on the content type.
switch input.Header("Content-Type") { if strings.Contains(input.Header("Content-Type"), "multipart/form-data") {
case "application/x-www-form-urlencoded":
// Typical form.
if err := input.Request.ParseForm(); err != nil {
return errors.New("Error parsing request body:" + err.Error())
}
case "multipart/form-data":
if err := input.Request.ParseMultipartForm(maxMemory); err != nil { if err := input.Request.ParseMultipartForm(maxMemory); err != nil {
return errors.New("Error parsing request body:" + err.Error()) return errors.New("Error parsing request body:" + err.Error())
} }
} else if err := input.Request.ParseForm(); err != nil {
return errors.New("Error parsing request body:" + err.Error())
} }
return nil return nil
} }