今天因为下载表格需要前端传参数给后台,我一开始使用了ajax方法传参。结果弄了很久各种不行,跟后台在一起研究,其实请求时可以请求到文件,只是后台返回的文件是乱码。试过各种方法,最终解决了文件下载问题。
因为JQuery的ajax函数的返回类型只有xml、text、json、html等类型,没有“流”类型,所以我们如果要实现ajax下载,不能够使用相应的ajax函数进行文件下载。所以使用了js生成一个form,用这个form提交参数,并返回“流”类型的数据。在实现过程中,页面也没有进行刷新。
这是我解决问题的代码。我需要传给后台的参数分别是pageSize,keyword等。用这种方式就解决了文件下载问题。