我正在构建一个允许用户从我的服务器下载文件的网站。 我写了一条服务文件的路线:
@api.route('/download_results/<path:filename>')
def download_results(filename):
return send_from_directory(app.config['UPLOAD_FOLDER'], filename, as_attachment=True)
如果我尝试使用这样的html标签:
<a class="btn btn-primary" herf="http://localhost/api/download_results/1234567890/results.zip" download="results.zip">Download results</a>
它不起作用。但如果我在jQuery中添加一个事件监听器:
$('a').on('click', function(event) {
event.preventDefault();
window.location.href = location.origin + '/api/download_results/' + data.parsedData[0];
});
它可以工作,我可以下载,但我得到一个警告:
资源被解释为文档但以MIME类型传输 应用程序/ x-ZIP压缩的: “http://localhost/api/download_results/1234567890/results.zip”。
任何人都知道我做错了什么以及如何解决这个问题? 谢谢!
答案 0 :(得分:2)
您的锚标记的href
属性应该是一个错字。