微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

后端如果返回一个文件的地址,前端实现下载,可以借助原生ajax来实现

实现代码如下所示: <!DOCTYPE html> <html lang="en"> <head>   <Meta charset="UTF-8">   <Meta name="viewport" content="width=device-width, initial-scale=1.0">   <title>Document</title> </head> <body>   <input type="button" value="test" onclick="test()">      <script>     const fileInfo = {       url: 'pdf/5ea56710fb5a2fdad7cabcf3.pdf',       name: 'b.pdf'     }     function test() {       downloadUrlFile(fileInfo.url)     }     function downloadUrlFile(url) {       const xhr = new XMLHttpRequest()       xhr.open('GET', url, true)       xhr.responseType = 'blob'       xhr.onload = () => {         if (xhr.status === 200) {           saveAs(xhr.response, fileInfo.name)         }       }       xhr.send()     }     function saveAs(data, name) {         var urlObject = window.URL || window.webkitURL || window;         var export_blob = new Blob([data]);         var save_link = document.createElementNS('http://www.w3.org/1999/xhtml', 'a')         save_link.href = urlObject.createObjectURL(export_blob);         save_link.download = name;         save_link.click();     }   </script> </body> </html>

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐