首页 > spring mvc 如何返回一个图片,通过地址直接显示图片,而不是下载 ?

spring mvc 如何返回一个图片,通过地址直接显示图片,而不是下载 ?

我把图片存在D盘 。我如何让这个图片直接通过地址比如: http://localhost:8080/png就可以显示,而不是下载 ?
我图片一定在d盘。


如果不想像上面说的放到webapp目录下。
那你就执行下面这几步。

  1. 设置content-type (即便不设置,现代浏览器也一般能正确解析响应的类型)

  2. 读取文件 FileInputStream 这个不需要多讲吧

  3. 直接将InputStream读取到的数据输出到response.getoutputstream()去。


把图片放在工程的webapp目录下就可以了


拿一个png图片举例:

// HttpServletResponse
response.setContentType("image/png");
response.getOutputStream().write(bytes);

这样写会只显示图片而不下载。
再加上一句:

response.addHeader("Content-Disposition", "attachment;filename=image.png";

这样写在浏览器上打开链接会直接下载图片,放入image标签的src属性会显示图片


https://sf-static.b0.upaiyun.com/v-573ed5d9/global/img/logo-b.svg

你访问这个也是让你下载?

【热门文章】
【热门文章】