Javascript 允许下载和打开文件的内容处置头

Javascript 允许下载和打开文件的内容处置头,javascript,html,http-headers,content-disposition,Javascript,Html,Http Headers,Content Disposition,我有一些文件,我希望人们能够下载或查看他们的浏览器,因为他们希望。 我不知道如何简单地做到这一点,在主机中设置头或执行一些javascript魔术 最终结果应该是一个html页面,每个文件列出2个链接,一个在新选项卡中打开,一个下载文件。我可以让一个或另一个,但不能同时让两个都工作 我尝试了两种内容配置选项,它们都可以工作,但不能同时工作。 我尝试了chrome.downloads api,但它在普通html脚本中不可用。 我试过了,但它下载了一个包含链接的文本文件,而不是文件内容。 下载属性会

我有一些文件,我希望人们能够下载或查看他们的浏览器,因为他们希望。 我不知道如何简单地做到这一点,在主机中设置头或执行一些javascript魔术

最终结果应该是一个html页面,每个文件列出2个链接,一个在新选项卡中打开,一个下载文件。我可以让一个或另一个,但不能同时让两个都工作

我尝试了两种内容配置选项,它们都可以工作,但不能同时工作。 我尝试了chrome.downloads api,但它在普通html脚本中不可用。 我试过了,但它下载了一个包含链接的文本文件,而不是文件内容。 下载属性会被忽略,以支持内容处置头,并默认为内联,因此即使不将其设置为强制打开,也不允许下载

内容配置:内联
内容配置:附件


有人能发现我做错了什么吗?

内容处理头需要由服务器发送,我相信在您的情况下,对于响应中的给定文件,它只能出现一次(在您的情况下,您只发送一个文件,而不是包含多个文件的多部分表单数据)。毕竟,这是对用户代理的一个建议,它应该如何处理该文件。要实现链接,您需要两个单独的URL(如果有服务器端脚本,区别可能是查询字符串):一个提供
内容配置:内联
响应,另一个提供
内容配置:附件;filename=“text.txt”
响应。如果您这样做,链接应该可以在任何现代浏览器中使用。

遗憾的是,似乎没有任何方法只使用标题就可以做到这一点,我需要加入一些脚本。

您在哪里设置
内容配置
?那代码是什么样子的?我从未遇到过浏览器在从服务器正确发送时无法正确处理的问题。我的问题是,我需要能够根据用户的意愿在浏览器上进行下载和打开。3行csv?在选项卡中打开,15000行csv?下载。这都是关于choicesHum的,我使用s3作为宿主,所以我没有访问权限,但这证实了我的怀疑,即没有任何好的方法只使用头来实现这一点。非常感谢。