gpt4 book ai didi

java - 如何在 Spring Boot 中将页面重定向到静态文件?

转载 作者:行者123 更新时间:2023-11-30 06:54:49 28 4
gpt4 key购买 nike

如何在 Spring Boot (MVC) 中重定向页面 Web 请求/请求映射以指向静态文件(例如:.txt、.json、.jpg、.mp4 等)。我的 Spring Boot 项目中只有一个 application.properties 文件和 @Controllers。

我希望用户在浏览器中向 url 发出 web 请求时被要求下载文件(而不是使用它来尝试呈现页面,就像它对 .html、.jsp 所做的那样)

最佳答案

您可以通过告诉回复您希望附加可下载文件来实现此目的。然后您可以简单地编写您想要下载的内容。

这是一个例子:

@ResponseStatus(HttpStatus.OK)
@RequestMapping(value = "/myredirect", method = RequestMethod.GET, produces = MediaType.APPLICATION_OCTET_STREAM_VALUE)
public void downloadFile(HttpServletResponse response) {
// Remove this instruction if you wish to disable the download dialog.
response.setHeader("Content-Disposition", "attachment; filename=filename.ext");

// Load your file content as byte.
byte[] fileContent = IOUtils.toByteArray(new ClasspathResource("myfile").getIntputStream());

response.getOutputStream().write(fileContent);
}

另一方面,如果您只是想直接映射到静态文件。您可以使用 Spring Boot Starter Web 的默认 public 文件夹。

默认情况下,classpath:/public 中的任何文件都将映射到 /*

关于java - 如何在 Spring Boot 中将页面重定向到静态文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35979403/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com