在“强大的”IE浏览器面前,有个BUG,就是当你界面<img src="/user/img/....">访问后台数据的时候,加载不出来,但是请求头是有东西的。如果遇到这种问题,以下是解决办法
在你后端访问的action里找到所请求的方法:设置图像的mime类型就可以了。MagicMatch 对象依赖的jar包,在pom里导入即可
<dependency>
<groupId>net.sf.jmimemagic</groupId>
<artifactId>jmimemagic</artifactId>
<version>0.1.4</version>
</dependency>
InputStream fis = new FileInputStream(new File(.....));
byte[] data = getBytes(fis);
MagicMatch match = Magic.getMagicMatch(data);
String mimeType = match.getMimeType();
HttpServletResponse response = ControllerUtils.getResponse();
try {
// 设置响应的类型格式为图片格式
response.setContentType(mimeType);
//禁止图像缓存。
response.setHeader("Pragma", "no-cache");
response.setHeader("Cache-Control", "no-cache");
response.setDateHeader("Expires", 0);
BufferedOutputStream bos = new BufferedOutputStream(response.getOutputStream());
bos.write(data);
fis.close();
bos.close();
}catch (Exception e){
e.printStackTrace();
}