使用springboot做图片服务器,复制图片地址到谷歌浏览器直接下载而不是展示
这边使用hutool读取文件,出现这个问题只需要将百度的代码中res.addHeader(“Content-Disposition”, “attachment;filename=image”);这一句注释掉即可在谷歌浏览器直接展示图片
package com.example.demo;
import java.io.IOException;
import javax.servlet.http.HttpServletResponse;
import org.springframework.http.MediaType;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import cn.hutool.core.io.FileUtil;
@RestController
@RequestMapping("/api")
public class ImgController {
/***
* 文件下载
*
* @param filename 需要下载文件的绝对路径
* @param res
* @throws IOException
*/
@RequestMapping("/down")
@GetMapping
public void download(@RequestParam("filename") String filename, HttpServletResponse res) throws IOException {
//访问地址如下
String file="http://127.0.0.1:8080/api/down?filename=1.jpg";
filename="D:\\desktop\\"+filename;
try {
// res.addHeader("Content-Disposition", "attachment;filename=image");
res.setContentType(MediaType.IMAGE_JPEG_VALUE);
res.getOutputStream().write(FileUtil.readBytes(filename));
} catch (Exception e) {
e.printStackTrace();
} finally {
}
}
}