gpt4 book ai didi

java - Micronaut:公开资源中的文件

转载 作者:行者123 更新时间:2023-12-02 02:37:09 28 4
gpt4 key购买 nike

我有一个小型 micronaut 应用程序,我需要在其中提供 resources 中的文件。这些文件应该可以公开访问,所以如果我输入该文件的 url,它将直接在浏览器中打开(它们是小图像)。

我试过用

micronaut:
application:
name: myapp
router.static-resources:
enabled: true
paths: classpath:data
mapping: "/**"

但是响应总是一样的:

{
"message": "Page Not Found",
"_links": {
"self": {
"href": "/data/per.svg",
"templated": false
}
}
}

我需要什么额外的配置?

最佳答案

您的配置有两个问题:

  1. 你有 micronaut.router.static-resources.enabled 但它应该是 micronaut.router.static-resources.default.enabled。所以 default 丢失了。
  2. 您正在将类路径中 data 目录中存储的静态资源映射到根 / Web 路径。因此,您可以在 http://localhost:8080/per.svg 上访问该 per.svg 文件。

但是最好使用单独的上下文然后使用 root 以防止与 Controller 路径发生冲突。因此,您可以将其映射到 static,例如:

micronaut:
application:
name: myapp
router:
static-resources:
default:
enabled: true
mapping: "/static/**"
paths: classpath:data

然后你就可以在http://localhost:8080/static/per.svg上访问它了

关于java - Micronaut:公开资源中的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64147833/

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