postman中请求后台的导出文件接口,该接口的目的是返回下载一个Excel文件;(现在下载的Excel文件中内容什么都正常)
问题1:每一次在postman中请求下载,生成的文件名就是我在后台设置的中文名经过URLEncoder.encode(fileName,'UTF-8')编码后的值比如(**%E8%E87%AA%E6%9C)**等,为啥为什么不能正常显示我所设置的中文名,反而.xlsl后缀正常;
问题2:如果是直接send,则返回的数据在postman中显示是一堆乱码,这是否正常?
问题3:后台不管是send方式还是send+download方式,后台都会报错:No converter for [com.abc.ExcelDto] with preset Content-Type 'application/vnd.ms-excel;charset=UTF-8',我查找了解决方法,说是return 返回空即可,我也试了,确实可以解决,但是,我必须给前台返回一些提示信息,所以,这方法感觉不符合我现在的要求,我需不需要去过分在意这个错误。
postman中请求springboot,返回excel文件的一些问题,请朋友们帮助解答一下。
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
2条回答 默认 最新
- 乌门坳 2021-09-11 17:10关注
1.使用UrlEncoder编码后,需要进行解码才能正常显示,这个解码是浏览器行为,使用浏览器访问时会正常显示。用postman时,没有进行解码,所以下载的文件名是编码过后的(**%E8%E87%AA%E6%9C)。
2.是正常的。文件下载时返回的是字节流。使用send方式直接将流显示,就看起来是一堆乱码样的。所以使用postman进行文件下载时需要使用send and download
3.文件下载一般返回void就行了。前端点击文件下载后,就会进行文件下载(直接下载或者弹出选择文件夹)。要看你需要返回什么信息了,不知道可不可以放到请求头本回答被专家选为最佳回答 , 对您是否有帮助呢?解决 1无用
悬赏问题
- ¥15 如何在scanpy上做差异基因和通路富集?
- ¥20 关于#硬件工程#的问题,请各位专家解答!
- ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
- ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
- ¥30 截图中的mathematics程序转换成matlab
- ¥15 动力学代码报错,维度不匹配
- ¥15 Power query添加列问题
- ¥50 Kubernetes&Fission&Eleasticsearch
- ¥15 報錯:Person is not mapped,如何解決?
- ¥15 c++头文件不能识别CDialog