Fix get dir metadata ()

* fix:mount deadlock

* feat: query dir metadata

* feat: query dir metadata

---------

Co-authored-by: zemul <zhouzemiao@ihuman.com>
This commit is contained in:
zemul 2024-08-22 02:01:18 +08:00 committed by GitHub
parent 6ce27affa4
commit 95bae91ca7
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -122,13 +122,15 @@ func (fs *FilerServer) GetOrHeadHandler(w http.ResponseWriter, r *http.Request)
return
}
if query.Get("metadata") == "true" {
writeJsonQuiet(w, r, http.StatusOK, entry)
return
}
if entry.Attr.Mime == "" || (entry.Attr.Mime == s3_constants.FolderMimeType && r.Header.Get(s3_constants.AmzIdentityId) == "") {
// Don't return directory meta if config value is set to true
if fs.option.ExposeDirectoryData == false {
writeJsonError(w, r, http.StatusForbidden, errors.New("directory listing is disabled"))
return
}
}
if entry.Attr.Mime == "" || (entry.Attr.Mime == s3_constants.FolderMimeType && r.Header.Get(s3_constants.AmzIdentityId) == "") {
// return index of directory for non s3 gateway
fs.listDirectoryHandler(w, r)
return