您好,我正在尝试通过异常流程下载文件。
情况如下:
用户触发下载按钮。
用户选择下载目录。
网络浏览器汇总用户来自第三方服务器的全部信息
聚合完成后,用户将自动下载信息。
问题是下载目的地是在开始下载之前确定的。
有什么方法可以解决这个问题吗?
提前谢谢。
答案 0 :(得分:1)
客户端浏览器确定下载文件的保存位置,如果供应网站可以更改该文件的位置,则可能是一个令人难以置信的安全问题。您可以将它们发送到系统文件夹,或者隐藏某些硬盘驱动器上的恶意代码。
根据我的经验
,设置下载目标的唯一方法是在浏览器配置中答案 1 :(得分:1)
您无法设置扩展文件夹。但据我所知,你的问题不是大问题,而是在你结束这个过程后的下载。
如果是这样,步骤将是:用户点击,数据将发送,保存的文件夹将由用户选择,下载将开始。
因此,要在你想要(在发送数据之后)开始下载,您可以创建一个带有download
属性的隐藏链接,然后随时点击它。< / p>
像这样:(下载的文件当然是demy,你需要设置链接,真正的URL)。
function startDownload() {
$('#status').html('collect data..')
setTimeout(function(){
download('test content', 'file name.txt', 'text/plain');
}, 2000);
}
function download(text, name, type) {
var file = new Blob([text], {type: type})
$('<a href="' + URL.createObjectURL(file) + '" download></a>').get(0).click();
}
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<button onclick="startDownload()">Download</button>
<div id="status"></div>
&#13;