直接下载txt文件而不是打开它

js下载txt文件,而不是在浏览器中打开它

使用axios方法下载(关键点在于指定使用blob)

downloadTxt(url) {
    axios.get(url, {responseType: 'blob'}).then(res => {
        let blob = new Blob([res]);
        let url = window.URL.createObjectURL(blob);
        let a = document.createElement("a");
        a.href = url;
        a.download = url.split('/').pop();
        a.click();
        window.URL.revokeObjectURL(url);
    })
}

吐槽一下,我直接使用window.open方法,可以说我用了我知道的所有的window的打开地址的方法,包括a标签,都是直接打开txt文件,或者下载了当前页面的txt文件,都无效。网上查了各种方法,都是抄袭,都无效,唉~

你可能感兴趣的:(前端笔记)