【解决关于前端Vue接收后端easyExcel导出接口传过来的文件流,无法获取请求头Content-Disposition信息,即无法从文件流中获取导出文件名】
【代码】【无标题】
·
解决关于前端Vue接收后端easyExcel导出接口传过来的文件流,无法获取请求头Content-Disposition信息,即无法从文件流中获取导出文件名
后端代码需要注意的地方
后端需要暴露请求头,这样前端才能拦截到响应的请求头信息
//暴露请求头,并且将文件名设置到请求头中
response.setHeader("Access-Control-Expose-Headers", "Content-disposition");
前端处理代码
var blob = new Blob([res.data], { type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' })
const contentDisposition = res.headers['content-disposition']
alert("content-disposition" + contentDisposition) // 此处拿到后端请求头中的信息
var fileName = 'test'
if (contentDisposition) {
// 切割获取后端文件流中的请求头信息
fileName = window.decodeURI(res.headers['content-disposition'].split('=')[1], 'UTF-8')
}`在这里插入代码片`
更多推荐
已为社区贡献1条内容
所有评论(0)