diff options
| author | Chris Lu <chris.lu@gmail.com> | 2018-09-12 00:46:12 -0700 |
|---|---|---|
| committer | Chris Lu <chris.lu@gmail.com> | 2018-09-12 00:46:12 -0700 |
| commit | f6d8525d1d8c1faf9a0826472bfcef0592ba3a93 (patch) | |
| tree | 8856e342215ca37a943c97e09528ead83814e472 /weed/server | |
| parent | 98d9aadd37500e31b98e91cbf1b4d4050d90e762 (diff) | |
| download | seaweedfs-f6d8525d1d8c1faf9a0826472bfcef0592ba3a93.tar.xz seaweedfs-f6d8525d1d8c1faf9a0826472bfcef0592ba3a93.zip | |
working S3 multipart uploads
Diffstat (limited to 'weed/server')
| -rw-r--r-- | weed/server/filer_server_handlers_write.go | 3 | ||||
| -rw-r--r-- | weed/server/volume_server_handlers_write.go | 11 |
2 files changed, 10 insertions, 4 deletions
diff --git a/weed/server/filer_server_handlers_write.go b/weed/server/filer_server_handlers_write.go index 2f9351fa1..394f32d88 100644 --- a/weed/server/filer_server_handlers_write.go +++ b/weed/server/filer_server_handlers_write.go @@ -117,7 +117,7 @@ func (fs *FilerServer) PostHandler(w http.ResponseWriter, r *http.Request) { return } - glog.V(0).Infof("request header %+v, urlLocation: %v", r.Header, urlLocation) + glog.V(4).Infof("write %s to %v", r.URL.Path, urlLocation) u, _ := url.Parse(urlLocation) @@ -221,6 +221,7 @@ func (fs *FilerServer) PostHandler(w http.ResponseWriter, r *http.Request) { Fid: fileId, Url: urlLocation, } + setEtag(w, etag) writeJsonQuiet(w, r, http.StatusCreated, reply) } diff --git a/weed/server/volume_server_handlers_write.go b/weed/server/volume_server_handlers_write.go index a0b142dea..64c59fa31 100644 --- a/weed/server/volume_server_handlers_write.go +++ b/weed/server/volume_server_handlers_write.go @@ -4,13 +4,14 @@ import ( "errors" "fmt" "net/http" + "strconv" + "time" + "strings" "github.com/chrislusf/seaweedfs/weed/glog" "github.com/chrislusf/seaweedfs/weed/operation" "github.com/chrislusf/seaweedfs/weed/storage" "github.com/chrislusf/seaweedfs/weed/topology" - "strconv" - "time" ) func (vs *VolumeServer) PostHandler(w http.ResponseWriter, r *http.Request) { @@ -175,6 +176,10 @@ func (vs *VolumeServer) batchDeleteHandler(w http.ResponseWriter, r *http.Reques func setEtag(w http.ResponseWriter, etag string) { if etag != "" { - w.Header().Set("ETag", "\""+etag+"\"") + if strings.HasPrefix(etag, "\"") { + w.Header().Set("ETag", etag) + } else { + w.Header().Set("ETag", "\""+etag+"\"") + } } } |
