java代码里返回了文件流:
reportPathName = new String(reportPathName.getBytes("gb2312"), "ISO8859-1");
response.setHeader("Content-Disposition", "attachment;filename=" + reportPathName)
out.clear();
out = pageContext.pushBody();
OutputStream outputStream = response.getOutputStream();
InputStream inputStream = new FileInputStream(reportPathName);
byte[] buffer = new byte[1024];
int i = -1;
while ((i = inputStream.read(buffer)) != -1) {
outputStream.write(buffer, 0, i);
}
outputStream.flush();
outputStream.close();
inputStream.close();
outputStream = null;
js里我该怎么获取这个文件流?兵器热存到本地?
首先,一定要用原生ajax写,别用jquery,血的教训,jq只支持text类型
其次,接受的contenttype为blob流类型,之后你就可以进行其他操作了,比如读成本地url下载之类的
为什么后台不反回String呢,自己给自己增加难度