繁体   English   中英

Spring静态资源映射:控制器vs addResourceHandler

[英]Spring static resources mapping : controller vs addResourceHandler

我正在尝试将一组特定的资源(音频)映射到控制器。 但是资源/ **映射到所有资源。 如何隔离特定的资源请求,以使其不通过Spring静态资源映射,而是传递给我的控制器? 将音频资源移动到资源以外的其他文件夹是唯一的解决方案吗?

例如:

资料夹结构:

/resources/js
/resources/css
/resources/audio

使用Spring Web Config进行资源映射:

@Override
public void addResourceHandlers(final ResourceHandlerRegistry registry)
{
   registry.addResourceHandler("/resources/**")
            .addResourceLocations("/resources/")
...
}

资源控制器:

public class ResourceController {

@RequestMapping(value = "/resources/audio",  
    method = RequestMethod.GET,
produces = MediaType.APPLICATION_OCTET_STREAM_VALUE)
@ResponseBody
public Resource getAudio(...) {
    }
   ....

}

将音频资源移动到资源以外的其他文件夹是唯一的解决方案吗?

那是什么问题呢? 似乎很完美:对我而言,常规而直观。 如果它不是静态的,请不要使其变为静态。

据我所知,没有办法在蚂蚁路径中指定排除。 而且我认为许多基于蚂蚁路径匹配的实用程序都为此提供了包含和排除路径。

但是无论如何,如NimChimpsky所说,在未来的发展意义上,由控制器提供/resources数据将是危险的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM