You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@mesos.apache.org by "Bjoern Metzdorf (JIRA)" <ji...@apache.org> on 2014/06/18 22:56:24 UTC
[jira] [Updated] (MESOS-1509) Use Content-Disposition filename (if
available) when downloading HTTP URIs
[ https://issues.apache.org/jira/browse/MESOS-1509?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Bjoern Metzdorf updated MESOS-1509:
-----------------------------------
Description:
Currently the slave stores downloaded HTTP URIs in filenames that are made up from the part after the last "/" in the URI (in src/launcher/fetcher.cpp:122):
{code}
path = path::join(directory, path.substr(path.find_last_of("/") + 1));
{code}
The problem is that the query string is included in the filename and a URI like {{http://my.web.server/dynamic/resource.tar.gz?a=b}} results in a downloaded file named {{resource.tar.gz?a=b}}.
The curl maintainers faced the same problem and added this:
{code}
-J, --remote-header-name
(HTTP) This option tells the -O, --remote-name option to use the server-specified Content-Disposition filename instead of extracting a filename from the URL.
{code}
Maybe Mesos could do the same if a Content-Disposition header exists.
was:
Currently the slave stores downloaded HTTP URIs in filesnames that contain the part after the last "/" in the URI (in src/launcher/fetcher.cpp:122):
{code}
path = path::join(directory, path.substr(path.find_last_of("/") + 1));
{code}
The problem is that the query string is included in the filename and a URI like {{http://my.web.server/dynamic/resource.tar.gz?a=b}} results in a downloaded file named {{resource.tar.gz?a=b}}.
The curl maintainers faced the same problem and added this:
{code}
-J, --remote-header-name
(HTTP) This option tells the -O, --remote-name option to use the server-specified Content-Disposition filename instead of extracting a filename from the URL.
{code}
Maybe Mesos could do the same if a Content-Disposition header exists.
> Use Content-Disposition filename (if available) when downloading HTTP URIs
> --------------------------------------------------------------------------
>
> Key: MESOS-1509
> URL: https://issues.apache.org/jira/browse/MESOS-1509
> Project: Mesos
> Issue Type: Improvement
> Components: slave
> Affects Versions: 0.18.0, 0.19.0, 0.20.0, 0.21.0
> Environment: Linux (but should be irrelevant)
> Reporter: Bjoern Metzdorf
> Priority: Minor
>
> Currently the slave stores downloaded HTTP URIs in filenames that are made up from the part after the last "/" in the URI (in src/launcher/fetcher.cpp:122):
> {code}
> path = path::join(directory, path.substr(path.find_last_of("/") + 1));
> {code}
> The problem is that the query string is included in the filename and a URI like {{http://my.web.server/dynamic/resource.tar.gz?a=b}} results in a downloaded file named {{resource.tar.gz?a=b}}.
> The curl maintainers faced the same problem and added this:
> {code}
> -J, --remote-header-name
> (HTTP) This option tells the -O, --remote-name option to use the server-specified Content-Disposition filename instead of extracting a filename from the URL.
> {code}
> Maybe Mesos could do the same if a Content-Disposition header exists.
--
This message was sent by Atlassian JIRA
(v6.2#6252)