spring boot 图片上传后在线预览实现,某些情况下我们上传的图片需要在线预览而不是下载,这个时候就需要注意下面的两个配置了
response.setHeader("Content-Type","application/octet-stream");
response.setHeader("Content-Disposition","attachment;filename="+URLEncoder.encode(ossFile.getFileOriginalName(),"UTF-8"));
当图片不需要在线查看的时候,需要配置上面两个信息
当我们需要在线预览查看图片的时候一定不要设置上面两个属性。
判断是否为图片文件类型:
String contentType = "";
Optional<MediaType> mediaType = MediaTypeFactory.getMediaType(ossFile.getStorageName());
if(mediaType.isPresent()){
contentType=mediaType.get().toString();
}
boolean isImage=contentType.startsWith("image");
图片如果需要在线预览,则通过判断是否为图片后再决定是否添加Content-Type Content-Disposition这两个属性。
关联:spring boot 下载excel文件提示“文件中部分内容有问题。是否让我们尽量尝试恢复
原创文章,作者:jamestackk,如若转载,请注明出处:https://blog.ytso.com/tech/pnotes/243949.html