diff options
| author | Chris Lu <chrislusf@users.noreply.github.com> | 2022-06-07 08:56:55 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-06-07 08:56:55 -0700 |
| commit | f43ec9f36310b6c8b34bf7188e36a90c961f0d7e (patch) | |
| tree | 183d61ae73241b5aae7de845403c58761a76bd45 /weed/s3api/s3api_object_handlers.go | |
| parent | 666e620b63fef47bac70f2995f530ea307807c48 (diff) | |
| parent | c07820178f492c9f344bfce2d929c646dcdc7638 (diff) | |
| download | seaweedfs-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.go | 8 |
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) } |
