接口返回 HttpServletResponse的文件流 ,前台image标签 src填写接口地址 回显图片
时间: 2023-12-04 19:02:41 浏览: 72
接口回调加载图片
好的,你的问题是如何将接口返回的 HttpServletResponse 文件流在前端使用 image 标签进行回显图片。那么,首先需要确保你的接口返回的是图片的字节流,而不是文件路径或者其他格式的数据。
接口返回的 HttpServletResponse 文件流,可以通过以下代码进行输出:
```java
@RequestMapping("/getImage")
public void getImage(HttpServletResponse response) throws IOException {
// 读取图片字节流
FileInputStream fis = new FileInputStream("path/to/image.jpg");
byte[] buffer = new byte[fis.available()];
fis.read(buffer);
fis.close();
// 设置响应头
response.setContentType("image/jpeg");
// 输出图片字节流
OutputStream os = response.getOutputStream();
os.write(buffer);
os.flush();
os.close();
}
```
在前端使用 image 标签进行回显图片,只需要将 src 属性设置为接口地址即可,如下所示:
```html
<img src="/getImage" alt="Image" />
```
其中,"/getImage" 是你定义的接口地址,需要与后端接口代码中的请求路径保持一致。
当浏览器解析到该标签时,会向接口地址发送请求,后端返回的图片字节流将会在浏览器中显示出来。需要注意的是,如果图片较大,可能会影响页面加载速度,建议对图片进行压缩或者分片处理。
阅读全文