fier/s3: save "Content-Disposition" to extended properties

related to https://github.com/chrislusf/seaweedfs/issues/2371
This commit is contained in:
Chris Lu 2021-10-12 00:04:28 -07:00
parent 34f764007f
commit de1ec050e8
2 changed files with 4 additions and 1 deletions

View File

@ -256,6 +256,9 @@ func adjustHeaderContentDisposition(w http.ResponseWriter, r *http.Request, file
w.Header().Set("Content-Disposition", responseContentDisposition) w.Header().Set("Content-Disposition", responseContentDisposition)
return return
} }
if w.Header().Get("Content-Disposition") != "" {
return
}
if filename != "" { if filename != "" {
filename = url.QueryEscape(filename) filename = url.QueryEscape(filename)
contentDisposition := "inline" contentDisposition := "inline"

View File

@ -218,7 +218,7 @@ func (fs *FilerServer) saveMetaData(ctx context.Context, r *http.Request, fileNa
entry.Extended = SaveAmzMetaData(r, entry.Extended, false) entry.Extended = SaveAmzMetaData(r, entry.Extended, false)
for k, v := range r.Header { for k, v := range r.Header {
if len(v) > 0 && (strings.HasPrefix(k, needle.PairNamePrefix) || k == "Cache-Control" || k == "Expires") { if len(v) > 0 && (strings.HasPrefix(k, needle.PairNamePrefix) || k == "Cache-Control" || k == "Expires" || k == "Content-Disposition") {
entry.Extended[k] = []byte(v[0]) entry.Extended[k] = []byte(v[0])
} }
} }