java 如何实现前端直接获取图片 返回URL
Java 可以通过以下两种方式来实现前端直接获取图片并返回 URL:
- 使用 Spring Boot 框架中的
@RestController注解来创建 RESTful API 接口,前端通过发送 HTTP 请求获取图片 URL。
@RestController
public class ImageController {
@GetMapping("/image/{imageName}")
public ResponseEntity<Resource> getImage(@PathVariable String imageName) throws IOException {
Resource file = new FileSystemResource("path/to/images/" + imageName);
return ResponseEntity.ok()
.contentType(MediaType.IMAGE_JPEG)
.body(file);
}
}
- 使用 Servlet 技术来创建一个带有图片访问路径的 Servlet,前端通过访问该路径获取图片 URL。
@WebServlet(name = "ImageServlet", urlPatterns = {"/image/*"})
public class ImageServlet extends HttpServlet {
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String imageName = request.getPathInfo().substring(1);
File file = new File("path/to/images/" + imageName);
response.setHeader("Content-Type", getServletContext().getMimeType(imageName));
response.setHeader("Content-Length", String.valueOf(file.length()));
response.setHeader("Content-Disposition", "inline; filename=\"" + imageName + "\"");
Files.copy(file.toPath(), response.getOutputStream());
}
}
以上两种方式都可以实现前端直接获取图片并返回 URL,具体选择哪种方式可以根据实际需求和技术栈来决定。
原文地址: http://www.cveoy.top/t/topic/bFBE 著作权归作者所有。请勿转载和采集!