前端html+js,后端python+flask,如何实现文件下载?

您所在的位置:网站首页 js怎么导入js文件 前端html+js,后端python+flask,如何实现文件下载?

前端html+js,后端python+flask,如何实现文件下载?

2023-03-30 06:50| 来源: 网络整理| 查看: 265

您需要在JavaScript代码中添加一个事件监听器来处理XHR对象的onload事件,以便在服务器响应成功时进行处理,并使用responseType属性将响应类型设置为"blob",以便正确处理文件下载。

以下是更新后的JavaScript代码:

function myFunction() { url_new = '/test' alert(url_new) const xhr = new XMLHttpRequest(); xhr.open("GET", url_new); xhr.responseType = 'blob'; // 设置响应类型为二进制数据 xhr.onload = function() { if (xhr.status === 200) { // 创建一个URL对象以从响应内容中创建blob URL const blob = new Blob([xhr.response], {type: 'application/json'}); const url = window.URL.createObjectURL(blob); // 创建一个a标签并模拟点击以触发文件下载 const link = document.createElement('a'); link.href = url; link.download = 'data.json'; document.body.appendChild(link); link.click(); // 清理创建的URL对象 window.URL.revokeObjectURL(url); } else { alert('无法下载文件。'); } }; xhr.send(); }

请注意,此示例仅适用于处理JSON文件类型,您可能需要根据实际情况进行调整和修改。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3