gpt4 book ai didi

javascript - Content-Disposition header 允许下载和打开文件

转载 作者:行者123 更新时间:2023-11-30 13:55:03 26 4
gpt4 key购买 nike

我有一些文件,我希望人们能够根据需要在浏览器中下载或查看这些文件。我不知道如何简单地做到这一点,在主机中设置 header 或做一些 javascript 魔术。

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

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

Content-Disposition: inline
Content-Disposition: attachment
<a href="test.txt" download="text.txt" target="_blank">

谁能发现我做错了什么?

最佳答案

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

关于javascript - Content-Disposition header 允许下载和打开文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57465474/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com