window.location.href下载跳转到空白页面问题
hello你好我是辰兮很高兴你能来阅读,最近一直在做更前端相关的业务,这里来整理一下我们文件下载常见到一些问题,以及解决思路,分享获取新知,大家一起进步!
最近遇到了挺多关于下载文件的问题,来整理一下问题以及解决思路
场景一:如何实现文件的下载
前端比较简单的做法就是,后台就是IO流的输出
window.location.href = ‘url’
- 1
正常我们前端点击下载的时候会访问一个路径,后台通过IO流进行相关的输出,实现下载,这里在controller层这个访问路径的返回值一般都是void,因为是IO流的输出
前端这里我们可以本地测试一下,导入一个本地文件的路径,点击下载按钮即可测试
场景二:下载的时候跳转到登录页面
原因一:这个路径本身没有文件给你下载,即导出文件为空
原因二:可能使用的是无痕浏览器,这里之所以返回到了登录页面是因为做了类似的token校验的相关问题,所以返回到登录界面
我一般测试会用无痕浏览器测试,上次就遇到了这样的问题,以上的两种场景我都遇到过
解决思路:检验是否上述原因,下载的时候做判空判断
场景三:下载的时候跳转到空白界面
类似上面的情况,其实正常下载的时候我们要根据业务常见进行相关的判断
比如你现在的是某一个数据库表的数据,但是这个表示测试后来直接新加的,本身就是没有数据的,就会出现这样的问题
解决思路:检验是否上述原因,下载的时候做判空判断
好比点击数据库的下载下载数据中的所有表,这时候我们可以根据数据库的id查询出该数据库下是否有表 ,如果没有表进行一个小提示,如果有这个有表,那么执行接下来下载的操作
if(){
//如果为空提示,无数据无法下载
}else{
//正常下载
}
- 1
- 2
- 3
- 4
- 5
正如世界上最远的距离就像if else 虽然总是相遇单总无法同时执行!
本篇的分享就到这里了希望对你解决问题有帮助!
The best investment is to invest in yourself.
2020.11.08 晚20:40 愿你们奔赴在自己的热爱里!
文章来源: blessing.blog.csdn.net,作者:辰兮要努力,版权归原作者所有,如需转载,请联系作者。
原文链接:blessing.blog.csdn.net/article/details/109564104
- 点赞
- 收藏
- 关注作者
评论(0)