diff options
| author | zemul <zemul@foxmail.com> | 2022-10-12 22:14:49 +0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-10-12 07:14:49 -0700 |
| commit | a05725aea6b6c4e99a5b6d9541b94fd7bbd15ab9 (patch) | |
| tree | 4d6eefe06da5abeaa4d2177cd6bc119418ebcb2f | |
| parent | e55076c46f4d4f4b08d940ac0a972f445776e029 (diff) | |
| download | seaweedfs-a05725aea6b6c4e99a5b6d9541b94fd7bbd15ab9.tar.xz seaweedfs-a05725aea6b6c4e99a5b6d9541b94fd7bbd15ab9.zip | |
filer: get directory metadata (#3833)
| -rw-r--r-- | weed/server/filer_server_handlers_read.go | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/weed/server/filer_server_handlers_read.go b/weed/server/filer_server_handlers_read.go index 8c3d4bcd8..645a3fb44 100644 --- a/weed/server/filer_server_handlers_read.go +++ b/weed/server/filer_server_handlers_read.go @@ -107,9 +107,15 @@ func (fs *FilerServer) GetOrHeadHandler(w http.ResponseWriter, r *http.Request) return } + query := r.URL.Query() + if entry.IsDirectory() { if fs.option.DisableDirListing { - w.WriteHeader(http.StatusMethodNotAllowed) + w.WriteHeader(http.StatusForbidden) + return + } + if query.Get("metadata") == "true" { + writeJsonQuiet(w, r, http.StatusOK, entry) return } if entry.Attr.Mime == "" { @@ -125,7 +131,6 @@ func (fs *FilerServer) GetOrHeadHandler(w http.ResponseWriter, r *http.Request) return } - query := r.URL.Query() if query.Get("metadata") == "true" { if query.Get("resolveManifest") == "true" { if entry.Chunks, _, err = filer.ResolveChunkManifest( |
