mediaapi/writers/upload: Generate Content-Disposition if not set

This commit is contained in:
Robert Swain 2017-05-09 20:10:27 +02:00
parent 9d9b23e8e4
commit 911b5dc170

View file

@ -21,6 +21,7 @@ import (
"fmt" "fmt"
"io" "io"
"net/http" "net/http"
"net/url"
"os" "os"
"path" "path"
"strings" "strings"
@ -127,12 +128,16 @@ func Upload(req *http.Request, cfg config.MediaAPI, db *storage.Database) util.J
}, },
} }
// FIXME: if no Content-Disposition then set
if resErr = r.Validate(cfg.MaxFileSize); resErr != nil { if resErr = r.Validate(cfg.MaxFileSize); resErr != nil {
return *resErr return *resErr
} }
if len(r.MediaMetadata.UploadName) > 0 {
r.MediaMetadata.ContentDisposition = types.ContentDisposition(
"inline; filename*=utf-8''" + url.PathEscape(string(r.MediaMetadata.UploadName)),
)
}
logger.WithFields(log.Fields{ logger.WithFields(log.Fields{
"Origin": r.MediaMetadata.Origin, "Origin": r.MediaMetadata.Origin,
"UploadName": r.MediaMetadata.UploadName, "UploadName": r.MediaMetadata.UploadName,