-
Notifications
You must be signed in to change notification settings - Fork 96
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Support attachment filename in Fili requests #709
Comments
I'm all for handling "download vs. not" uniformly across resources, but there are a few concerns I have with this:
|
Revised proposal: Add a fileName parameter to the API. Existence of a filename parameter value forces the addition of a ContentDisposition Attachment header if one doesn't already exist. (e.g. default json) Renaming downloaded files is not super convenient in the context of UI reporting interactions. Normally UIs can trigger download names on links but they can't if there is a cross-site difference between the API and the UI. We've already had customers with large queries exceed the file name length limit in Excel in the case where the entire query is being spelled out in the file name. At the heart of this is the navi (https://github.com/yahoo/navi) UI experience is customer reporting and custom reporting creates a demand for name management from reports. |
Fili currently only sets download file names in the csv use case and doesn't allow any user specification of attachment format.
We should, via the format=FOO parameter support attachment filename specification.
Proposed contract change:
for jsonapi, json and csv (but not debug) allow parameterized arguments (similar to the parameterized metrics rfc) in the form of:
json[filename=foo].
Where the presence of filename will trigger/override the adding of the header:
"Content-Disposition: attachment; filename="foo""
format: csv by default will continue to add Content-Disposition with the generated filename, json, by default will continue to use the http default ('inline') behavior.
The text was updated successfully, but these errors were encountered: