修复文件名包含特殊字符(+、-、*...)的文件无法下载问题

master
RuoYi 2 years ago
parent e03183eb19
commit 7fdd053638
  1. 8
      src/plugins/download.js

@ -9,7 +9,7 @@ const baseURL = import.meta.env.VITE_APP_BASE_API
export default { export default {
name(name, isDelete = true) { name(name, isDelete = true) {
var url = baseURL + "/common/download?fileName=" + encodeURI(name) + "&delete=" + isDelete var url = baseURL + "/common/download?fileName=" + encodeURIComponent(name) + "&delete=" + isDelete
axios({ axios({
method: 'get', method: 'get',
url: url, url: url,
@ -19,14 +19,14 @@ export default {
const isLogin = await blobValidate(res.data); const isLogin = await blobValidate(res.data);
if (isLogin) { if (isLogin) {
const blob = new Blob([res.data]) const blob = new Blob([res.data])
this.saveAs(blob, decodeURI(res.headers['download-filename'])) this.saveAs(blob, decodeURIComponent(res.headers['download-filename']))
} else { } else {
this.printErrMsg(res.data); this.printErrMsg(res.data);
} }
}) })
}, },
resource(resource) { resource(resource) {
var url = baseURL + "/common/download/resource?resource=" + encodeURI(resource); var url = baseURL + "/common/download/resource?resource=" + encodeURIComponent(resource);
axios({ axios({
method: 'get', method: 'get',
url: url, url: url,
@ -36,7 +36,7 @@ export default {
const isLogin = await blobValidate(res.data); const isLogin = await blobValidate(res.data);
if (isLogin) { if (isLogin) {
const blob = new Blob([res.data]) const blob = new Blob([res.data])
this.saveAs(blob, decodeURI(res.headers['download-filename'])) this.saveAs(blob, decodeURIComponent(res.headers['download-filename']))
} else { } else {
this.printErrMsg(res.data); this.printErrMsg(res.data);
} }

Loading…
Cancel
Save