mirror of
https://github.com/golang/go
synced 2024-11-14 09:00:21 -07:00
fix the logic for checking multipart/mixed and add a test
This commit is contained in:
parent
885ff1d9c9
commit
08ce026f52
@ -431,7 +431,7 @@ func (r *Request) multipartReader(allowMixed bool) (*multipart.Reader, error) {
|
||||
return nil, ErrNotMultipart
|
||||
}
|
||||
d, params, err := mime.ParseMediaType(v)
|
||||
if err != nil || d != "multipart/form-data" || (allowMixed && d != "multipart/mixed") {
|
||||
if err != nil || !(d == "multipart/form-data" || allowMixed && d == "multipart/mixed") {
|
||||
return nil, ErrNotMultipart
|
||||
}
|
||||
boundary, ok := params["boundary"]
|
||||
|
@ -143,6 +143,16 @@ func TestMultipartReader(t *testing.T) {
|
||||
t.Errorf("expected multipart; error: %v", err)
|
||||
}
|
||||
|
||||
req = &Request{
|
||||
Method: "POST",
|
||||
Header: Header{"Content-Type": {`multipart/mixed; boundary="foo123"`}},
|
||||
Body: ioutil.NopCloser(new(bytes.Buffer)),
|
||||
}
|
||||
multipart, err = req.MultipartReader()
|
||||
if multipart == nil {
|
||||
t.Errorf("expected multipart; error: %v", err)
|
||||
}
|
||||
|
||||
req.Header = Header{"Content-Type": {"text/plain"}}
|
||||
multipart, err = req.MultipartReader()
|
||||
if multipart != nil {
|
||||
|
Loading…
Reference in New Issue
Block a user