如何使用 javascript 下载网址? [复制]
Posted
技术标签:
【中文标题】如何使用 javascript 下载网址? [复制]【英文标题】:How do I use javascript to download a url? [duplicate] 【发布时间】:2012-12-06 12:57:12 【问题描述】:可能重复:Force download through js or query
我正在尝试编写 javascript,当给定一个 url 时,它会告诉用户的浏览器下载指向该 url 的资源。我想要的基本上是:
function download(url) ...
我可以使用window.open(url)
设置窗口,但问题是浏览器仍然可以决定是显示还是下载文件。由于我无法通过 javascript 控制 MIME 类型,因此我需要一种方法来使用 javascript 指示浏览器忽略 MIME 类型并下载资源。基本上与右键单击链接并单击“下载”或等效项时发生的情况相同。
旁注:我已经尝试使用 html5 标签的“下载”属性,但目前至少有一个浏览器(firefox)没有正确实现它,所以暂时不考虑。
【问题讨论】:
【参考方案1】:我认为这可能会有所帮助:
将此 JavaScript 代码放入 HTML 正文中:
<A HREF="javascript:popUp('http://yoururl.com')</a>
【讨论】:
popUp
未在我的浏览器中定义。如果您的意思是open
- 已经尝试过了。【参考方案2】:
你不能这样做。它将为恶意软件打开太多可能性,因为它将使 JS 无需任何用户交互即可在计算机上下载文件。你可以做一个 php 脚本,将所有请求代理到你希望浏览器通过这个 PHP 下载的资源,PHP 会发送相应的 HTTP 头来强制下载。
【讨论】:
不会构成安全威胁。即使 javascript 决定下载一个文件,用户仍然必须决定页面去哪里(以及它是否去某个地方)。以上是关于如何使用 javascript 下载网址? [复制]的主要内容,如果未能解决你的问题,请参考以下文章
如何以编程方式创建用户可以下载的 Javascript 客户端文件? [复制]
如何使用 javascript 获取字符串跟随 url? [复制]
如何使用 Javascript ajax 发送 url? [复制]