前端文件导出
常规的办法,一般是用 a 标签,有一下可以下载的固定地址。也有的是通过 api 来下载的,但是要配置一下 responseType,
export function downloadFile(id: string) { return axios.get(`/v1/storages/${id}/download`, { responseType: "blob" }) }
配置后返回的数据
配置前返回的数据
api 下载文件
api(ids).then((response: Record<string, any>) => { const blob = new Blob([response.data]) const eLink = document.createElement('a') eLink.download = fileType eLink.style.display = 'none' eLink.href = URL.createObjectURL(blob) document.body.appendChild(eLink) eLink.click() URL.revokeObjectURL(eLink.href) document.body.removeChild(eLink) })