aboutsummaryrefslogtreecommitdiff
path: root/weed/s3api/s3api_object_handlers.go
diff options
context:
space:
mode:
authorChris Lu <chrislusf@users.noreply.github.com>2022-06-07 08:56:55 -0700
committerGitHub <noreply@github.com>2022-06-07 08:56:55 -0700
commitf43ec9f36310b6c8b34bf7188e36a90c961f0d7e (patch)
tree183d61ae73241b5aae7de845403c58761a76bd45 /weed/s3api/s3api_object_handlers.go
parent666e620b63fef47bac70f2995f530ea307807c48 (diff)
parentc07820178f492c9f344bfce2d929c646dcdc7638 (diff)
downloadseaweedfs-f43ec9f36310b6c8b34bf7188e36a90c961f0d7e.tar.xz
seaweedfs-f43ec9f36310b6c8b34bf7188e36a90c961f0d7e.zip
Merge pull request #3130 from kmlebedev/fix_rm_parent_dir_via_nextcloud
Diffstat (limited to 'weed/s3api/s3api_object_handlers.go')
-rw-r--r--weed/s3api/s3api_object_handlers.go8
1 files changed, 6 insertions, 2 deletions
diff --git a/weed/s3api/s3api_object_handlers.go b/weed/s3api/s3api_object_handlers.go
index 5e34803cc..84ed1c92b 100644
--- a/weed/s3api/s3api_object_handlers.go
+++ b/weed/s3api/s3api_object_handlers.go
@@ -92,16 +92,20 @@ func (s3a *S3ApiServer) PutObjectHandler(w http.ResponseWriter, r *http.Request)
}
defer dataReader.Close()
+ objectContentType := r.Header.Get("Content-Type")
if strings.HasSuffix(object, "/") {
if err := s3a.mkdir(s3a.option.BucketsPath, bucket+strings.TrimSuffix(object, "/"), func(entry *filer_pb.Entry) {
- entry.Attributes.Mime = r.Header.Get("Content-Type")
+ if objectContentType == "" {
+ objectContentType = "httpd/unix-directory"
+ }
+ entry.Attributes.Mime = objectContentType
}); err != nil {
s3err.WriteErrorResponse(w, r, s3err.ErrInternalError)
return
}
} else {
uploadUrl := s3a.toFilerUrl(bucket, object)
- if r.Header.Get("Content-Type") == "" {
+ if objectContentType == "" {
dataReader = mimeDetect(r, dataReader)
}