java Spring Boot2.7写一个接口 提供图片预览 前端可以直接用接口地址当src为图片地址使用

我们特别是在做小程序开发时 很多图片会比较大 而小程序本身就对自身大小要求非常高
所以 图片放在服务器上提供访问链接是一种非常好的选择

我想很多前端会误认为 直接将图片放在服务器上就可以了
但其实没那么简单 因为服务器其实也可以理解为一个电脑 你就想 你自己本地都不能直接链接访问 放到服务器怎么可能就有这好事了呢?

但我们可以通过写一个接口来完成
这个功能不需要注入任何依赖

就比如 我要将 D:/图片管理/奇迹商人.jpg 文件保留出来 提供给大家预览
我就可以这样写

@GetMapping("/image")
public ResponseEntity<ByteArrayResource> getImage() throws IOException {
    // 指定图片文件路径
    String imagePath = "D:/图片管理/奇迹商人.jpg";

    // 读取图片文件为字节数组
    Path path = Paths.get(imagePath);
    byte[] imageBytes = Files.readAllBytes(path);

    // 创建字节数组资源
    ByteArrayResource resource = new ByteArrayResource(imageBytes);

    // 设置响应头
    HttpHeaders headers = new HttpHeaders();
    headers.setContentType(MediaType.IMAGE_JPEG);

    // 返回字节数组资源作为响应
    return ResponseEntity.ok()
            .headers(headers)
            .contentLength(imageBytes.length)
            .body(resource);
}

java Spring Boot2.7写一个接口 提供图片预览 前端可以直接用接口地址当src为图片地址使用_第1张图片
然后 我们启动项目
在浏览器上输入接口地址 即可实现这个图片的预览了
java Spring Boot2.7写一个接口 提供图片预览 前端可以直接用接口地址当src为图片地址使用_第2张图片
前端也可以直接将这个接口的地址 当做图片地址 放在src中

你可能感兴趣的:(前端)