aboutsummaryrefslogtreecommitdiff
path: root/weed/server
diff options
context:
space:
mode:
authorChris Lu <chris.lu@gmail.com>2018-09-12 00:46:12 -0700
committerChris Lu <chris.lu@gmail.com>2018-09-12 00:46:12 -0700
commitf6d8525d1d8c1faf9a0826472bfcef0592ba3a93 (patch)
tree8856e342215ca37a943c97e09528ead83814e472 /weed/server
parent98d9aadd37500e31b98e91cbf1b4d4050d90e762 (diff)
downloadseaweedfs-f6d8525d1d8c1faf9a0826472bfcef0592ba3a93.tar.xz
seaweedfs-f6d8525d1d8c1faf9a0826472bfcef0592ba3a93.zip
working S3 multipart uploads
Diffstat (limited to 'weed/server')
-rw-r--r--weed/server/filer_server_handlers_write.go3
-rw-r--r--weed/server/volume_server_handlers_write.go11
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+"\"")
+ }
}
}