support PUT

This commit is contained in:
Chris Lu 2018-07-21 15:58:48 -07:00
parent feb8eeb830
commit c98df05ed0
2 changed files with 13 additions and 6 deletions

View file

@ -10,6 +10,7 @@ import (
"github.com/chrislusf/seaweedfs/weed/images" "github.com/chrislusf/seaweedfs/weed/images"
. "github.com/chrislusf/seaweedfs/weed/storage/types" . "github.com/chrislusf/seaweedfs/weed/storage/types"
"io/ioutil"
) )
const ( const (
@ -57,7 +58,16 @@ func ParseUpload(r *http.Request) (
} }
} }
fileName, data, mimeType, isGzipped, isChunkedFile, e = parseMultipart(r) isChunkedFile, _ = strconv.ParseBool(r.FormValue("cm"))
if r.Method == "POST" {
fileName, data, mimeType, isGzipped, e = parseMultipart(r, isChunkedFile)
} else {
isGzipped = false
mimeType = r.Header.Get("Content-Type")
fileName = ""
data, e = ioutil.ReadAll(r.Body)
}
if e != nil { if e != nil {
return return
} }

View file

@ -8,11 +8,10 @@ import (
"path" "path"
"io/ioutil" "io/ioutil"
"strings" "strings"
"strconv"
) )
func parseMultipart(r *http.Request) ( func parseMultipart(r *http.Request, isChunkedFile bool) (
fileName string, data []byte, mimeType string, isGzipped bool, isChunkedFile bool, e error){ fileName string, data []byte, mimeType string, isGzipped bool, e error) {
form, fe := r.MultipartReader() form, fe := r.MultipartReader()
if fe != nil { if fe != nil {
glog.V(0).Infoln("MultipartReader [ERROR]", fe) glog.V(0).Infoln("MultipartReader [ERROR]", fe)
@ -64,8 +63,6 @@ func parseMultipart(r *http.Request) (
} }
} }
isChunkedFile, _ = strconv.ParseBool(r.FormValue("cm"))
if !isChunkedFile { if !isChunkedFile {
dotIndex := strings.LastIndex(fileName, ".") dotIndex := strings.LastIndex(fileName, ".")