Browse Source

Fix Content-Disposition header; add dl=(0|1) URI param to use inline (default) or attachment

pull/302/head
Alexander Kovalenko 9 years ago
parent
commit
f101ad6855
  1. 8
      go/weed/weed_server/volume_server_handlers_read.go

8
go/weed/weed_server/volume_server_handlers_read.go

@ -197,7 +197,13 @@ func writeResponseContent(filename, mimeType string, rs io.ReadSeeker, w http.Re
w.Header().Set("Content-Type", mimeType)
}
if filename != "" {
w.Header().Set("Content-Disposition", `filename="`+fileNameEscaper.Replace(filename)+`"`)
contentDisposition := "inline"
if r.FormValue("dl") != "" {
if dl, _ := strconv.ParseBool(r.FormValue("dl")); dl {
contentDisposition = "attachment"
}
}
w.Header().Set("Content-Disposition", contentDisposition+`; filename="`+fileNameEscaper.Replace(filename)+`"`)
}
w.Header().Set("Accept-Ranges", "bytes")
if r.Method == "HEAD" {

Loading…
Cancel
Save