SpringMVC下载文件,响应结果有数据但资源管理器无法下载文件

SpringMVC download file,the response result has data but explorer can't download file

正如标题所说。 我这样设置 java 中的值:

response.setHeader("Content-Disposition", "attachment; filename=" + targetName);
response.setContentType("application/octet-stream");
response.setCharacterEncoding("UTF-8");

我在 chrome 资源管理器中调试,响应 body 是:

问题已通过更改 JS 文件中的提交方法解决。 起初我通过这个发送请求: Ext.Ajax.request({ utl:'', 参数:{}, 方法:'POST' }); 但是ajax不能下载文件但是可以接收json/html/js/string格式的body。 所以在 extjs 中,如果你想下载文件,不要使用 ajax 请求。 也许您需要使用 native javascript 来做到这一点。 例如: var 形式 = document.createElement("形式); form.method='POST'; form.action='/'; //处理数据

document.body.appendChild(form);
form.submit();